一、算術(shù)操作
復制代碼 代碼如下:
+ - * / %
二、關(guān)系操作
復制代碼 代碼如下:
> >= = == != ||
三、測試操作
測試命令 : test [ ] [[ ]] (( ))
1、測試文件狀態(tài)
復制代碼 代碼如下:
-d 目錄
-b 塊設(shè)備
-s 文件長度 > 0、非空
-f 正規(guī)文件
-w 可寫
-L 符號連接
-u 文件有 suid 位設(shè)置
-r 可讀
-x 可執(zhí)行
如: [ -w tmp.txt ] 測試文件tmp.txt是否可寫
2、字符串測試
復制代碼 代碼如下:
= 兩個字符串相等
!= 兩個字符串不相等
-z 空串
-n 非空串
$ VAR1='abc'
$ VAR2='123'
$ [ "$VAR1" = "$VAR2" ]
$ echo $?
1
3、測試數(shù)值
復制代碼 代碼如下:
-eq 等于
-ne 不等于
-gt 大于
-lt 小于
-ge 大于等于
-le 小于等于
4. 拓展測試符號 [[ ]] (( ))
復制代碼 代碼如下:
# [[ 2 > 10 ]] # 結(jié)果錯誤
# echo $?
0
# (( 2 >10 )) 結(jié)果正確
# echo $?
0
# [[ "aa" = "aa" ]]
# echo $?
0
# (( "aa" = "aa" )) #結(jié)果錯誤
# echo $?
1
四、結(jié)論
比較數(shù)字,使用(( ))
其他測試使用 [[ ]]
包含數(shù)字比較的混合測試,使用標準語法