Bash while循環(huán)

2020-06-17 17:57 更新

while循環(huán)可以定義為控制流語(yǔ)句,只要您所應(yīng)用的條件為真,該語(yǔ)句就允許重復(fù)執(zhí)行您給定的命令集。

基礎(chǔ)

語(yǔ)法:

  1. while [ expression ];
  2. do
  3. commands;
  4. multiple commands;
  5. done

注:
expression可包含多個(gè)條件。
只要條件評(píng)估為真,do···done之間的命令會(huì)重復(fù)執(zhí)行。
while循環(huán)的參數(shù)可以是布爾表達(dá)式。
若條件始終判斷為true,則進(jìn)入無(wú)限循環(huán),可使用Ctrl + C終止循環(huán)。

運(yùn)作規(guī)則:

  1. 檢查條件,若判斷為true,執(zhí)行該條件后的命令集;若判斷為false,退出循環(huán)。 2.在循環(huán)結(jié)束(包括退出循環(huán))后,將程序控制權(quán)交給另一個(gè)命令。

while 循環(huán) — break 語(yǔ)句

您可以通過(guò) break 語(yǔ)句可以終止 while 循環(huán)的重復(fù)性任務(wù),如下示例:

  1. #!/bin/bash
  2. #While Loop Example with a Break Statement
  3. echo "Countdown for Website Launching..."
  4. i=10
  5. while [ $i -ge 1 ]
  6. do
  7. if [ $i == 2 ]
  8. then
  9. echo "Mission Aborted, Some Technical Error Found."
  10. break
  11. fi
  12. echo "$i"
  13. (( i-- ))
  14. done

執(zhí)行后得到以下結(jié)果:

  1. 10
  2. 9
  3. 8
  4. 7
  5. 6
  6. 5
  7. 4
  8. 3

注:
本次循環(huán)在第八次迭代寫(xiě)入了一個(gè)條件,為該條件給定了一個(gè)break語(yǔ)句中止迭代,并退出循環(huán)。

while 循環(huán) — continue 語(yǔ)句

您可以通過(guò) continue 語(yǔ)句在 while 循環(huán)中以特定條件跳過(guò)該條件下的迭代,如下示例:

  1. #!/bin/bash
  2. #While Loop Example with a Continue Statement
  3. i=0
  4. while [ $i -le 10 ]
  5. do
  6. ((i++))
  7. if [[ "$i" == 5 ]];
  8. then
  9. continue
  10. fi
  11. echo "Current Number : $i"
  12. done

執(zhí)行后得到以下結(jié)果:

  1. 1
  2. 2
  3. 3
  4. 4
  5. 6
  6. 7
  7. 8
  8. 9
  9. 10
  10. 11

注:
在第五次循環(huán)寫(xiě)入了條件,為該條件給定了一個(gè)continue語(yǔ)句跳過(guò)本次迭代。

以上內(nèi)容是否對(duì)您有幫助:
在線(xiàn)筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)