(032) Linux之shell流控制for循环
十年運(yùn)維系列之基礎(chǔ)篇 - Linux
作者:曾林?
聯(lián)系:1494445739@qq.com
網(wǎng)站:www.jplatformx.com
版權(quán):文章未經(jīng)同意請(qǐng)勿轉(zhuǎn)載
一、引言
本章是關(guān)于流控制的最后一章,我們將學(xué)到一個(gè)全新的shell循環(huán)結(jié)構(gòu),那就是for循環(huán)結(jié)構(gòu),因?yàn)閒or循環(huán)采用的是在循環(huán)期間進(jìn)行序列處理的機(jī)制,所以它不同于while循環(huán)和until循環(huán)。事實(shí)證明,for循環(huán)是對(duì)編程非常有用的。因此for循環(huán)在bash腳本中是一種非常流行的結(jié)構(gòu)。
for命令在bash腳本中存在兩種形式。
?
二、for:傳統(tǒng)的shell形式
原始的for命令語(yǔ)法如下:
for variable [in words]; docommands done其中,variable是一個(gè)在循環(huán)執(zhí)行時(shí)會(huì)增量的變量名,words是一列將按順序賦給變量variable的可選項(xiàng),commands部分是每次循環(huán)時(shí)都會(huì)執(zhí)行的命令。
for命令在命令行上是很有用的。如下圖展示:
需要注意的是,對(duì)于可選項(xiàng)只需要空格隔開(kāi)即可。空格就是可選項(xiàng)的隔開(kāi)符。
for循環(huán)真正強(qiáng)大的功能在于創(chuàng)建字符列表的方式有很多種。例如,可以使用花括號(hào)擴(kuò)展的方式,如下所示:
或使用路徑名擴(kuò)展方式,如下所示:
如果for命令中的選項(xiàng)部分被忽略的話,那么for循環(huán)默認(rèn)處理該位置參數(shù)。如下代碼和運(yùn)行圖例如下:
?
三、for:C語(yǔ)言形式
最近的bash版本已經(jīng)加入了第二種for命令語(yǔ)法,它類(lèi)似于C語(yǔ)言形式,并且許多的編程語(yǔ)言都支持這種形式。其語(yǔ)法如下:
for (( expression1; expression2; expresson3 )); docommands done其中expression1、expression2、expression3為算術(shù)表達(dá)式,commands是每次循環(huán)都要執(zhí)行的命令。
就執(zhí)行結(jié)果而言,這種形式等同于如下結(jié)構(gòu)。
(( expression1 )) while (( expression2 )); docommands(( expression3 )) doneexpression1用來(lái)初始化循環(huán)條件,expression2用來(lái)決定循環(huán)何時(shí)結(jié)束,expression3在每次循環(huán)末尾執(zhí)行。
如下將具體展示用法和圖例:
?
轉(zhuǎn)載于:https://www.cnblogs.com/jplatformx/p/4358519.html
總結(jié)
以上是生活随笔為你收集整理的(032) Linux之shell流控制for循环的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: EF中的那些批量操作
- 下一篇: linux网络编程之二-----多播(组