【test命令】
測試特定的表達式是否成立,當條件成立時,測試語句的返回值爲0,否則爲其他數值
格式1:test 條件表達式
格式2:[ 條件表達式 ] //前後至少一個空格
【文件測試】
格式:[ 操作符 文件或目錄 ]
-d:測試是否爲目錄(Directory)
-e: 測試目錄或文件是否存在(Exist)
-f: 測試是否爲文件(File)
-r: 測試當前用戶是否有權限讀取(Read)
-w: 測試當前用戶是否有權限寫入(Wrute)
-x: 測試是否設置有可執行(Excute)權限
若測試的條件不成立,則測試操作的返回值將不爲0(通常爲1)
爲了更直觀地查看測試結果,可以結合 && 和 echo 命令一起使用,當條件成立時直接輸出“YES”
【整數值比較】
整數值比較指的是根據給定的兩個整數值,判斷第一個數與第二個數的關係,如果是否大於、等於、小於第2個數。
-eq: 第一個數等於(Equal)第二個數
-ne: 第一個數不等於(Not Equal)第二個數
-gt: 第一個數大於(Greater Than)第二個數
-lt: 第一個數小於(Lesser Than)第二個數
-le: 第一個數小於或等於(Lesser or Equal)第二個數
-ge: 第一個數大於或等於(Greater or Equal)第二個數
例如,若要判斷當前已登錄的用戶數,當超出一個時輸出“大於1”,可以執行以下操作。
【字符串比較】
格式1:[ 字符串1 = 字符串2 ] :第一個字符串與第二個字符串相同
[ 字符串1 != 字符串2 ] :第一個字符串與第二個字符串不相同,其中“!”符號表示取反
格式2:[ -z 字符串 ] :檢查字符串是否爲空(Zero),對於未定義或賦予空值得變量將視爲空串
【邏輯測試】
格式1:[ 表達式1 ] 操作符 [ 表達式2 ] ...
格式2:命令1 操作符 命令2 ...
&&:邏輯與,表示“而且”,只有當前後兩個條件都成立時,整個測試命令的返回值才爲0(結果成立)。使用Test命令測試時,“&&”可改爲“-a”
||:邏輯或,表示“或者”,只要前後兩個條件中有一個成立,整個測試命令的返回值及爲0(結果成立)。使用Test命令測試時,“||”可改爲“-o”
!:邏輯否,表示“不”,只有當指定的條件不成立時,整個測試命令的返回值才爲0(結果成立)
以上一些Shell條件測試的一些簡單的操作,如果覺得不錯那就點個贊吧~\(≧▽≦)/~
如果有大神發現我有哪裏寫的不對的,請評論告訴我,我會及時更正的哦!