目錄4.other
-eq 等於,如:if [ "$a" -eq "$b" ]
-ne 不等於,如:if [ "$a" -ne "$b" ]
-gt 大於,如:if [ "$a" -gt "$b" ]
-ge 大於等於,如:if [ "$a" -ge "$b" ]
-lt 小於,如:if [ "$a" -lt "$b" ]
-le 小於等於,如:if [ "$a" -le "$b" ]
< 小於(需要雙括號),如:(("$a" < "$b"))
<= 小於等於(需要雙括號),如:(("$a" <= "$b"))
> 大於(需要雙括號),如:(("$a" > "$b"))
>= 大於等於(需要雙括號),如:(("$a" >= "$b"))
= 等於,如:if [ "$a" = "$b" ]
== 等於,如:if [ "$a" == "$b" ],與=等價
#!/bin/bash
i=6
a=10
if [ $a -eq 10 ]
then
echo "a = 10"
fi
if [ $a -ne $i ]
then
echo "a != $i"
fi
if [ $a -gt $i ]
then
echo "a > i"
fi
if [ $a -lt $i ]
then
echo "a < i"
else
echo "a > i"
fi
if(("$a" > "$i"))
then
echo "(())a>i"
fi
if(($a != $i))
then
echo "(())a!=i"
fi
#!/bin/bash
a="123"
b="1234"
c="123"
if [ "$a"x != "$b"x ]
then
echo "a != b"
fi
if [ "$a"x = "$c"x ]
then
echo "a == c"
fi
-e 檔案存在
-a 檔案存在(已被棄用)
-f 被測檔案是乙個regular檔案(正常檔案,非目錄或裝置)
-s 檔案長度不為0
-d 被測物件是目錄
-b 被測物件是塊裝置
-c 被測物件是字元裝置
-p 被測物件是管道
-h 被測檔案是符號連線
-l 被測檔案是符號連線
-s(大寫) 被測檔案是乙個socket
-t 關聯到乙個終端裝置的檔案描述符。用來檢測指令碼的stdin[-t0]或[-t1]是乙個終端
-r 檔案具有讀許可權,針對執行指令碼的使用者
-w 檔案具有寫許可權,針對執行指令碼的使用者
-x 檔案具有執行許可權,針對執行指令碼的使用者
-u set-user-id(suid)標誌到檔案,即普通使用者可以使用的root許可權檔案,通過chmod +s file實現
-k 設定貼上位
-o 執行指令碼的使用者是檔案的所有者
-g 檔案的group-id和執行指令碼的使用者相同
-n 從檔案最後被閱讀到現在,是否被修改
f1 -nt f2 檔案f1是否比f2新
f1 -ot f2 檔案f1是否比f2舊
f1 -ef f2 檔案f1和f2是否硬連線到同乙個檔案
二元比較操作符,比較變數或比較數字
整數比較:
-eq 等於 if [ "$a" -eq "$b" ]
-ne 不等於 if [ "$a" -ne "$b" ]
-gt 大於 if [ "$a" -gt "$b" ]
-ge 大於等於 if [ "$a" -ge "$b" ]
-lt 小於 if [ "$a" -lt "$b" ]
-le 小於等於 if [ "$a" -le "$b" ]
< 小於(需要雙括號) (( "$a" < "$b" ))
< = 小於等於(...) (( "$a" <= "$b" ))
> 大於(...) (( "$a" > "$b" ))
> = 大於等於(...) (( "$a" >= "$b" ))
字串比較:
= 等於 if [ "$a" = "$b" ]
== 與=等價
!= 不等於 if [ "$a" = "$b" ]
< 小於,在ascii字母中的順序:
if [[ "$a" < "$b" ]]
if [ "$a" \< "$b" ] #需要對《進行轉義
> 大於
-z 字串為null,即長度為0
-n 字串不為null,即長度不為0
shell程式設計之條件語句
一 條件測試方法 方法1 test 條件表示式 方法2 條件表示式 注 方法2條件表示式與中括號之間必須有空格 二 條件測試分類 檔案測試 格式 操作符 檔案或目錄 常用測試操作符 d 測試目錄是否存在 f 測試檔案是否存在 e 測試目錄或檔案是否存在 r 測試當前使用者是否可讀 w 測試當前使用者...
shell程式設計之選擇語句
case語法規則 case 變數名 in 值1 語句1 值2 語句2 語句n esac case選擇語句符合單條件多分支的情況。例項 根據使用者的輸入來輸出對應的內容 bin bash read p please input your choice y n t 5 choice case choic...
Shell程式設計之條件語句
test命令 測試表示式是否成立,若成立返回0,否則返回其他數值 格式一 test 條件表示式 格式二 條件表示式 檔案測試 操作符 檔案或目錄 常用的測試操作符 d 測試是否為目錄 directory e 測試目錄或檔案是否存在 exist f 測試是否為檔案 file r 測試當前使用者是否有許...