shell條件測試

2021-06-06 00:28:41 字數 756 閱讀 3559

1.數值測試

數值判斷的格式如下:

[ 數值1 關係運算子 數值2 ]    //方括號與條件之間必須要有空格

-eq    兩個數值相等

-lt      第乙個數值小於第二個數值

-ne   兩個數值不相等

-ge   第乙個數值大於第二個數值

-gt    第乙個數值不小於第二個數值

-le    第乙個數值不大於第二個數值

例:#[ 100 -eq 100]

#echo $?

2.字串測試

[ 關係運算子 字串]

[ 字串1 關係運算子 字串2]

=     兩個字串相等

!=    兩個字串不相等

-z    字串為空

-n   字串不為空

例:#string1 = "test"

#[ -z $string1 ]

#echo $?

3.檔案狀態測試

-d   目錄

-f    一般檔案

-l   連線檔案

-r   可讀

-w  可寫

-x  可執行

-u  設定了suid

-s  檔案長度大於0,非空

p.s:

linux上檔案的特殊許可權suid,sgid,sbit詳解

shell條件測試

shell條件測試通常都會用在for while until if等控制流結構中,用於判斷檔案的相關性質或變數的相互關係。條件測試用法 test 表示式 結果 成立返回0,不成立返回非0 檢視結果 echo 以下是幾類常用的測試表示式 1 檔案狀態測試 b filename 當filename 存在...

shell條件測試

shell條件測試 檔案狀態測試 b filename 當filename 存在並且是塊檔案時返回真 返回0 c filename 當filename 存在並且是字元檔案時返回真 d pathname 當pathname 存在並且是乙個目錄時返回真 e pathname 當由pathname 指定的...

shell 條件測試

1 檔案相關 e 判斷檔案或者資料夾是否存在 d 判斷目錄是否存在 f 判斷檔案是否存在 r 判斷是否有讀許可權 w 判斷是否有寫許可權 x 判斷是否有執行許可權1.1命令列使用 root localhost e test mkdir test 如果test 資料夾並存在,就建立。1.2指令碼中使用...