// 運算符 算數運算符 關係運算符 布爾運算符 字符串運算符 文件運算符 一、算數運算符 + - * / % = == != echo `expr 1 + 1`; echo `expr 1 - 2`; echo `expr 1 / 3`; echo `expr 1 % 4`; echo `expr 1 \* 5`; // 乘號須要轉義 加反斜槓 a=1. b=2 echo `expr $a - $b` // -1 if [ $a != $b ] then echo "a不等於b" fi 二、關係運算符 -eq -ge -le -ne -gt -lt // 關係運算符只支持數字,不支持字符串,除非字符串的值是數字 a=1 b=2. if [ $a -eq $b ] then echo 'a==b' else echo 'a!=b' fi 三、布爾運算符 !取反 -o 或 -a 而且 a=1 b=2. if [ $a -eq 1 -a $b == 2 ] then. echo 'a==1 && b==2' fi. 四、邏輯運算符 && || 外面兩個中括號 a=1 b=2 if [[ $a -eq 1 && $b == 2 ]] then echo 'a==1 && b==2' fi 五、字符串運算符 = 相等 != -z 字符串長度是否爲0 -n 相反 $ 是否爲空 a='hello' b='hi' if [ $a = $b ] then echo 'a字符串和b字符串相等' else echo echo 'a字符串和b字符串不相等' fi if [ -z $a ] then echo ‘a字符串長度爲0’ else echo ‘a字符串長度不爲0’ fi if [ $a ] then echo ‘a字符串不爲空’ else echo ‘a字符串爲空’ fi 六、文件測試運算符 -d 是不是目錄文件 -f 普通文件 -r 是否只讀 -w -x -s 文件是否爲空. -e 文件或目錄是否存在 if [ -e '~/.ssh/hello.xxx'] then echo 'hello文件存在' else echo 'hello文件不存在' fi