1. 程式人生 > 其它 >Shell指令碼學習筆記8——跳出迴圈

Shell指令碼學習筆記8——跳出迴圈

在迴圈過程中,有時候需要在未達到迴圈結束條件時強制跳出迴圈,Shell使用兩個命令來實現該功能:break和continue。

break命令

break命令允許跳出所有迴圈(終止執行後面的所有迴圈)。

下面的例子中,指令碼進入死迴圈直至使用者輸入數字大於5。要跳出這個迴圈,返回到shell提示符下,需要使用break命令。

例項

#!/bin/bash
while:
do
echo-n"輸入 1 到 5 之間的數字:"
readaNum
case$aNumin
1|2|3|4|5)echo"你輸入的數字為$aNum!"
;;
*)echo"你輸入的數字不是 1 到 5 之間的! 遊戲結束"
break
;;
esac
done

執行以上程式碼,輸出結果為:

輸入 1  5 之間的數字:3
你輸入的數字為 3!
輸入 1  5 之間的數字:7
你輸入的數字不是 1  5 之間的! 遊戲結束

continue

continue命令與break命令類似,只有一點差別,它不會跳出所有迴圈,僅僅跳出當前迴圈。

對上面的例子進行修改:

例項

#!/bin/bash
while:
do
echo-n"輸入 1 到 5 之間的數字: "
readaNum
case$aNumin
1|2|3|4|5)echo"你輸入的數字為$aNum!"
;;
*)echo"你輸入的數字不是 1 到 5 之間的!"
continue
echo"遊戲結束"
;;
esac
done

執行程式碼發現,當輸入大於5的數字時,該例中的迴圈不會結束,語句echo "遊戲結束"

永遠不會被執行。

原文連結:https://www.runoob.com/linux/linux-shell-process-control.html