流程控制語句
在shell中如果在終端輸入多個命令,如果以&分隔則將命令放入後臺執行,如果以;分隔,則表示一個命令集合。shell允許使用邏輯操作符&&和||來作爲命令分隔符,他們分別時AND和OR.
&&
如果前面命令執行成功,則執行&&後面的命令
||
如果前面的命令執行失敗,執行||後面的命令
if 語句
條件判斷語句
if語句是一個判斷語句,基於條件執行命令,格式如下:if
語句必須以fi
結尾。
COMMANDS 可以是單個命令、命令組、表達式。if語句根據他們的執行結果或條件表達式來執行命令。
命令
根據命令的執行結果(exit status)來執行命令。
如果ls的exit status等於0
命令組
當一次需要執行多個命令時可以以組爲單位執行,命令組可以使用(COMMANDS;...)和{ COMMANDS;....; }來表示。
使用小括號(COMMANDS;....)來包裹命令時,命令會在一個子shell環境中執行,它的執行狀態爲COMMANDS中的最後一個命令的執行狀態。
使用大括號{ COMMANDS;....; }來包裹命令時,括號前後必須要有空格,命令與命令使用;分隔,最後一個命令的執行狀態作爲命令組的執行狀態。
示例:
if...;then ...;else ...;fi語句
使用 if....else 語句在條件爲 true 時執行代碼,在條件爲 false 時執行其他代碼。
語法:
示例:
if ... elif ...else fi語句
使用 if....else if...else 語句來選擇多個代碼塊之一來執行。