val =expr 2 + 2
需要注意的是
關係運算子只支援數字,不支援字串,除非字串的值都是數字
header 運算子
header 說明
-eqequal,檢測兩個數是否相等,相等返回true
-nenot equal,檢測兩個數是否不相等,不想等則返回true
-gtgreat then,檢測左邊的數是否大於右邊的數,如果是則返回true
-ltless then,檢測左邊的數是否小於右邊的數,如果是則返回true
-gegreat equal,檢測左邊的數是否大於等於右邊的數,如果是則返回true
-leless equal,檢測左邊的數是否小於等於右邊的數,如果是則返回true
注意的是:
header 運算子
header 說明
!非運算子
-o或運算
-a與運算
例子:if [ $a -lt 5 -o $b -gt 100 ]
header 運算子
header 說明
&&邏輯的and
例子:
if [[ $a -lt 100 || $b -gt 100 ]]
then
echo "返回 true"
else
echo "返回 false"
fi
注意的是:
header 運算子
header 說明
=檢測兩個字串是否相等,相等的話則返回true
!=檢測兩個字串是否不相等,不相等則返回true
-zzero,檢測字串是否為0,為0則返回true
-nnot zero,檢測字串是否不為0,不為0則返回true
str檢測字串是否為空,不為空則返回true
只選了部分比較常用的檔案測試運算子
header 運算子
header 說明
-d file
檢測檔案是否是目錄,如果是,則返回 true
-r file
read,檢測檔案是否可讀,如果是,則返回 true
-w file
write,檢測檔案是否可寫,如果是,則返回 true
-x file
excute,檢測檔案是否可執行,如果是,則返回 true
-s file
檢測檔案是否為空(檔案大小是否大於0),不為空返回 true
-e file
檢測檔案(包括目錄)是否存在,如果是,則返回 true
例子:
file="/var/www/runoob/test.sh"
if [ -r $file ]
then
echo "檔案可讀"
else
echo "檔案不可讀"
fi
Shell筆記(運算子 關係運算子 布林運算子)
運算 語法 運 算式 表示式 表示式 表示式 expr a b 加 expr a b 減 expr a b 乘 expr a b 除 expr a b 求餘 a b 將b的值賦給a a b 判斷a是否等於b,返回結果為布林值 a b 判斷a是否不等於b,返回結果為布林值 注意 shell的字元型數值...
shell運算子操作 算術運算子
a 10 b 20 echo a b expr echo a b expr echo a b expr echo a b expr echo a b expr if a b then echo a等於b else echo a不等於b fiif a b then echo a不等於b else ec...
Linux 之 shell 比較運算子
運算子描述 示例檔案比較運算子 e filename 如果 filename 存在,則為真 e var log syslog d filename 如果 filename 為目錄,則為真 d tmp mydir f filename 如果 filename 為常規檔案,則為真 f usr bin g...