流程控制1

命令結束狀態

執行成功返回0

執行失敗n+128

找不到命令127

沒有權限126

$?存儲返回值

if條件判斷

if-then

if-then-else

完整語法

if條件測試1;then

命令區域1

elif條件測試2;then

命令2

else

命令3

fi

(())等同於let""

條件測試的寫法

執行某個命令的結果

ifgrep-q"rm"fn.sh;then

傳回某一命令的執行結果的相反值

!命令

if!grep-q"rm"fn.sh;then

注意!後有空格

使用複合命令(())

if((20<30));then

使用[[,]]

if[[str>xyz]];then

[[,]]前後有空格

使用test

iftest"str"\"xyz";then

使用內置命令:[]

if["str"\>"str"];then

[]和test用法相同可以互換

使用-a,-o進行邏輯組合

[-rfilename1-a-xfilename]

-a且,-o或

命令1&&命令2

ifgrep-q"rm"fn.sh&&[$a-lt100];then

命令1真正執行命令2兩個爲真返回真

命令1||命令2

ifgrep-q"rm"fn.sh||[$a-lt100];then

命令1假執行命令2有一個真返回真

&&和||合用

總結:

[-n${DEBUG:-}]&&set-v||set+v

[[]],test,[]的意思用法相近,[[]]不需要考慮特殊字符

[[]]使用==和!=右邊沒有""將視爲樣式

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章