溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

shell腳本編程之循環(huán)語(yǔ)句怎么用

發(fā)布時(shí)間:2021-09-05 16:12:26 來(lái)源:億速云 閱讀:258 作者:小新 欄目:開(kāi)發(fā)技術(shù)

小編給大家分享一下shell腳本編程之循環(huán)語(yǔ)句怎么用,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

在運(yùn)行腳本時(shí)重復(fù)執(zhí)行一系列的命令是很常見(jiàn)的,這時(shí)我們就需要使用循環(huán)語(yǔ)句來(lái)達(dá)到這個(gè)目的。

一、for命令

格式:for 變量 in 列表;do

循環(huán)體

done

for命令會(huì)遍歷列表中的每一個(gè)值,并且在遍歷完成后退出循環(huán)。

列表形式有以下幾種:

1、在命令中定義的一系列的值;
2、變量;
3、命令;
4、目錄;
5、文件。

實(shí)例1:

shell腳本編程之循環(huán)語(yǔ)句怎么用

上例中使用{初始值..結(jié)束值}格式來(lái)表示一個(gè)區(qū)間的數(shù)值。

實(shí)例2:以變量作為列表:

shell腳本編程之循環(huán)語(yǔ)句怎么用

實(shí)例3:用命令生成列表:

shell腳本編程之循環(huán)語(yǔ)句怎么用

上例中使用seq命令來(lái)生成列表,seq命令的格式為:seq [初始值 步長(zhǎng)] 終止值

shell腳本編程之循環(huán)語(yǔ)句怎么用

以上兩個(gè)例子中使用反引號(hào)將得到命令運(yùn)行的結(jié)果。

實(shí)例4:將目錄作為列表:

shell腳本編程之循環(huán)語(yǔ)句怎么用

二、C語(yǔ)言風(fēng)格的for命令

格式:for (( 變量賦值;循環(huán)終止條件;步長(zhǎng) )); do

循環(huán)體

done

實(shí)例:求從1加到100的和:

shell腳本編程之循環(huán)語(yǔ)句怎么用

三、until命令

格式:until 條件; do

statement
...
done

until命令中的條件滿足時(shí)則會(huì)退出循環(huán)。

實(shí)例:

shell腳本編程之循環(huán)語(yǔ)句怎么用

四、while命令

格式:while 條件; do

statement
...
done

while命令當(dāng)條件滿足時(shí)則進(jìn)入循環(huán)。

實(shí)例:

shell腳本編程之循環(huán)語(yǔ)句怎么用

五、控制循環(huán)

1、break命令

作用:退出正在進(jìn)行中的循環(huán)。

實(shí)例:如果變量i為3則退出循環(huán)。

shell腳本編程之循環(huán)語(yǔ)句怎么用

2、continue命令

作用:提前進(jìn)入下一輪循環(huán)。
實(shí)例:將1到20和51到100之間的數(shù)相加:

shell腳本編程之循環(huán)語(yǔ)句怎么用

六、while的殊用法

1、死循環(huán)

格式:while :; do
語(yǔ)句
done

實(shí)例:

shell腳本編程之循環(huán)語(yǔ)句怎么用

2、將文件內(nèi)容逐行讀入循環(huán)中

格式:while read 變量名; do

循環(huán)體

done < 文件

實(shí)例:逐行讀入/etc/passwd文件的內(nèi)容:

shell腳本編程之循環(huán)語(yǔ)句怎么用

以上是“shell腳本編程之循環(huán)語(yǔ)句怎么用”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI