條件測試常用三種形式:
1. 使用test命令,如: test -f "$i"
2.用一對方括號將測試條件包起來,如:[ -f "$i" ]
3.用[[條件表示式]]的形式
檔案方面的測試
檔案測試運算子的形式及功能
引數 功能
-r檔名
如檔案存在並且是使用者可讀的,則測試條件為真
-w檔名
如檔案存在並且是使用者可寫的,則測試條件為真
-x檔名
如檔案存在並且是使用者可執行的,則測試條件為真
-f檔名
如檔案存在並且是普通檔案,則測試條件為真
-d檔名
如檔案存在並且是目錄檔案,,則測試條件為真
-p檔名
如檔案存在並且是命名的fifo檔案,則測試條件為真
-b檔名
如檔案存在並且是塊特殊檔案,則測試條件為真
-c檔名
如檔案存在並且是字元特殊檔案,則測試條件為真
-s檔名
如檔案存在並且檔案長度大於0,則測試條件為真
-t檔案描述符
如檔案被開啟切檔案描述符是與終端裝置相關的,則測試條件為真,預設檔案描述符是1
字串測試
字串運算子的形式及功能 引數
功能-z
s1如果字串s1的長度為0,則測試條件為真
-ns1
如果字串s1的長度大於0,則測試條件為真
sl如果字串s1不是空字串,則測試條件為真
=或==
s1=s2
如果s1等於s2,則測試條件為真,「=」前後應有空格
!=s1!=s2
如果s1不等於s2,則測試條件為真
<
s1如果按字典順序s1在s2之前,則測試條件為真
>
s1>s2
如果按自定順序s1在s2之後,則測試條件為真
數值測試
數值測試運算子的形式及功能 引數
功能n1 -eq n2
如果整數n1等於n2,則測試條件為真
n1 -ne n2
如果整數n1不等於n2,則測試條件為真
n1 -lt n2
如果如果n1小於n2,則測試條件為真
n1 -le n2
如果如果n1小於或等於n2,則測試條件為真
n1 -gt n2
如果n1大於n2,則測試條件為真
n1 -ge n2
如果n1大於或等於n2,則測試條件為真
linux shell程式設計3 條件測試
1.基本語法 test condition 或 condition 使用括號方式時,條件與括號之間要加空格。2.字串測試 字串測試是條件判斷中最重要的部分,例 測試兩個字元是否相等。退出狀態變數 0表示成功,1表示失敗。if 命令就是使用該值做判斷。root localhost aa bb root...
Linux shell程式設計 條件判斷
太多了,沒記住。每次寫都要去翻,整理一下存到這裡方便查詢。b 檔案 判斷該檔案是否存在,並且是否為塊裝置檔案 是塊裝置檔案則為真 c 檔案 判斷該檔案是否存在,並且是否為字元裝置檔案 是字元裝置檔案為真 d 檔案 判斷該檔案是否存在,並且是否為目標檔案 是目錄為真 e 檔案 判斷該檔案是否存在 存在...
Linux shell 的條件 比較語法
shell判斷和比較 linux程式設計 第4版 if eq then elif eq 0 then else fi上面是乙個典型的 if else 語句語法結構。這裡的條件是數值比較。保險情況下,注意各種空格 then 可以單獨起一行,比如 if then fi while do done whi...