本文是Linux Shell系列教程的第(十二)篇,更多Linux Shell教程請看:Linux Shell系列教程
在上兩篇文章Linux Shell系列教程之(十)Shell for循環和Linux Shell系列教程之(十一)Shell while循環中,我們已經對Shell 循環語句的for循環和while循環進行了詳細介紹,本篇給大家介紹下Shell 中的最後一種循環語句:Shell until循環。
Shell until循環和while循環差不多,區別在於while的條件測試是測真值,until循環則是測假值。
也就是說,在while循環中,如果條件測試結果為真(傳回值為0),就進入循環;在until循環中,如果條件測試結果為真(傳回值為0),就跳出循環,如果測試結果為假(傳回值不為0),則繼續循環。
Shell until循環的語法如下:
until command do Statement(s) to be executed until command is true done
command 為條件表達式,如果返回值為 false,則繼續執行循環體內的語句,否則跳出循環。
還是老規矩,通過例子來深入了解下Shell until循環。
例子1:
#!/bin/bash a=0 until [ ! $a -lt 10 ] do echo $a a=`expr $a + 1` done
說明:當【a不小於10】這個條件為假時,會在循環體內循環執行命令,也就是說,當a大於等於10時,才會跳出循環體。
這個腳本會輸出0-9數字。
輸出:
0
1
2
3
4
5
6
7
8
9
例子2:
#!/bin/bash declare -i i=10 declare -i sum=0 until ((i>10)) do let sum+=i let ++i done echo $sum
說明:這個例子跟上篇文章中的例子很相似,但結果卻不一樣,具體的分析就留給讀者自己思考吧,想知道答案可以關注Linux大學公眾號(微信號:Linuxdaxue),然後發送【Shell until循環】來獲取答案,或者自己動手跑一跑例子啦。
關於Shell until循環的內容今天就先為大家介紹到這裡,更多Linux Shell教程請看:Linux Shell系列教程
http://xxx/Linuxjc/1157898.html TechArticle