shell指令碼條件語句編寫

2021-06-01 08:04:19 字數 860 閱讀 7423

第一步:掌握if語句幾種分支

下面的是if最完整的格式了,實際運用中可以根據需要刪減

if condition; then

//action

elif conditon: then

//action

...中間若干elif

else

//action

then

//action

fi這裡有幾點要說明 

1、action可以為空

2、if contion; then也可寫成 

if condion

then

第二步:掌握條件寫法

下面我們看看下condition的語法

比較命令主要有:

1、test

2、expr

他們都可以進行字串和數字的比較,不過test還可以對檔案的一些屬性進行比較,比如x,w,r,u等

下面簡要介紹下test和expr

格式:test condtion或[condtion](注意方括號兩邊必須有空格)

返回值:0正確 1表示返回錯誤

用法:1、測試檔案屬性:[-x file]

2、字串測試:=,!=,-z,-,-n 分別表示相等,不等,空串,非空串

3、數值測試:-gt,-lt,-ge,-le,-eq,-ne 分別表示 大於,小於,大於等於,小於等於,等於,不等於

expr主要用於整數的運算,同時還可以進行數值比較和字串比較,最神奇的還可以進行模式匹配【不過我絕對完全可以用awk,sed或grep代替】

+ ,-,*,/

注意:使用*時要加轉義字元\

參考:

Shell指令碼 條件語句

1 檔案測試 2 整數值比較 3 字串與邏輯測試 if語句 單分支的if語句 雙分支的if語句 多分枝的if語句 檔案測試是指的是根據給定的路徑名稱,判斷對應的是檔案還是目錄,或者判斷檔案是否可讀 可寫 可執行等。基本格式 test 條件表示式 或者 條件表示式 檔案的常見操作選項如下 選項 描述 ...

shell指令碼 條件

test或 命令 test用法 檢查乙個檔案是否存在。if test f fred.c thenfi或 if f fred.c then fi bin sh echo is it morning?please answer yes or no read timeofday if timeofday ...

shell指令碼條件判斷

unix shell 程式設計中條件判斷是極為重要的,以下是常用的條件判斷 檔案判斷 b file 若檔案存在且是乙個塊特殊檔案,則為真 c file 若檔案存在且是乙個字元特殊檔案,則為真 d file 若檔案存在且是乙個目錄,則為真 e file 若檔案存在,則為真 f file 若檔案存在且是...