while 循環(huán)用于不斷執(zhí)行一系列命令,也用于從輸入文件中讀取數(shù)據(jù);命令通常為測試條件。其格式為:
while command
do
Statement(s) to be executed if command is true
done
命令執(zhí)行完畢,控制返回循環(huán)頂部,從頭開始直至測試條件為假。
以下是一個基本的 while 循環(huán),測試條件是:如果 COUNTER 小于5,那么返回 true。COUNTER 從0開始,每次循環(huán)處理時,COUNTER 加1。運行上述腳本,返回數(shù)字1到5,然后終止。
COUNTER=0
while [ $COUNTER -lt 5 ]
do
COUNTER='expr $COUNTER+1'
echo $COUNTER
done
運行腳本,輸出:
1
2
3
4
5
while 循環(huán)可用于讀取鍵盤信息。下面的例子中,輸入信息被設(shè)置為變量 FILM,按
echo 'type <CTRL-D> to terminate'
echo -n 'enter your most liked film: '
while read FILM
do
echo "Yeah! great film the $FILM"
done
運行腳本,輸出類似下面:
type <CTRL-D> to terminate
enter your most liked film: Sound of Music
Yeah! great film the Sound of Music