標籤:
While迴圈的格式:
while expressiondocommandcommand、、、done
1、計數器控制的while迴圈:
主要用於已經準確知道要輸入的資料和字串的數目。
例子:
#!/bin/bashint=1while (($int <=5 ))doecho $intlet "int++"done
2、結束標記控制的while迴圈
主要用於不知道讀入資料的個數,但是可以設定一個特殊的資料值來結束迴圈,該特殊值稱為結束標記,通過提示使用者輸入進行操作。
例子:
#!/bin/bash#用指令碼示範使用結束標記控制while迴圈實現猜1~10內的數echo "Please input the num (1~~10): "read numwhile [[ $num != 4 ]]doif [ $num -lt 4 ];then echo "Too small,Try again.." read numelif [ $num -gt 4 ];then echo "Too big,Try again.." read numelse exit 0fidoneecho "Yes,you are right !!"
3、標誌控制的while迴圈
使用者輸入標誌值來控制迴圈的結束
例子:
#!/bin/bashecho "Please input the num: "read numsum=0i=1signal=0#while [[ $signal != 1 ]]while (($signal != 1))doif [ $i -eq $num ];then let "signal=1" let "sum+=i" echo "1+2、、、+$num=$sum"else let "sum=sum+i" let "i++"fidone
4、命令列控制的while迴圈
例子:
#!/bin/bashecho "Please iput arguements is $# "echo "What you input : "while [[ $* != "" ]]doecho $1shiftdone
Shell之while迴圈