Shell 運算符類型:
算數(shù)運算符 關(guān)系運算符 布爾運算符 字符串運算符 文件測試運算符
原生bash不支持簡單的數(shù)學(xué)運算,單是可以通過其他命令來實現(xiàn),例如awk和expr,expr最常用。
expr是一款表達式計算工具,使用它能完成表達式的求值操作。
val=`expr 2 + 2`
表達式和運算符之間要有空格,例如2+2是不對的,必須寫成2+2,這與我們熟悉的大多數(shù)編程語言不一樣。
完整的表達式要被``包含,注意這個字符不是單引號,在Esc鍵下邊。
算術(shù)運算符
+、-、*、/、%、=、==、!=、
注意:條件表達式要放在方括號之間,并且要有空格,例如:[$a==$b]是錯誤的,必須寫成[ $a == $b ]。

算數(shù)運算符

算數(shù)運算符
執(zhí)行結(jié)果:

執(zhí)行結(jié)果
在MAC中Shell的expr語法是:$((表達式)),此處表達式中的"*"不需要轉(zhuǎn)移符號"\"
關(guān)系運算符:
關(guān)系運算符只支持數(shù)字,不支持字符串,除非字符串的值是數(shù)字
-eq、-ne(不相等)、-gt、-lt、-ge(大于等于)、-le(小于等于)

關(guān)系運算符
布爾運算符:
!、-o(or)、-a(and)

布爾運算符
字符串運算符:
=、!=、-z(字符串長度是否為0,為0返回真)、-n(字符串是否為0,不為0返回真)、str

字符串運算符