1.常用的算术运算符
`expr $a + $b` a+b
`expr $a - $b` a-b
`expr $a \* $b` a*b
`expr $a / $b` a/b
`expr $a % $b` a%b
a = $b 赋值
[ $a == $b ] 判断是否相等
[ $a != $b ] 判断是否不相等
注:条件表达式放在中括号内并且两边都有空格
2.关系运算符(只支持数字,不支持字符串,除非字符串的值是数字)
-eq 检测是否相等
-ne 检测是否不相等
-gt 大于
-ge 大于等于
-lt 小于
-le 小于等于
eg:a=10,b=20
[ $a -eq $b ] #返回false
3.布尔运算符
! 非
-o 或
-a 与
|| 或
&& 与
-o , -a 和 ||,&&效果相同
4.字符串运算符
[ $a = $b ] 判断两字符串是否相等,相等返回true
[ $a != $b ] 判断两字符串是否不相等,不相等返回true
[ -z $a ] 检测a的长度是否为0,为0返回 true
[ -n $a ] 检测a的长度是否不为0,不为0返回true
[ $a ] 检测a是否为空,不为空返回 true
5.文件测试运算符
-b 检测文件是否为块设备文件
-c 检测文件是否为字符设备文件
-d 是否为目录
-f 是否为普通文件
-p 是否为有名管道
-r 是否为可读
-w 是否为可写
-x 是否为可执行
-s 是否为空
-e 检测文件(包括目录)是否存在
eg:[ -b $file ] #file="/var/www/index.html"
`expr $a + $b` a+b
`expr $a - $b` a-b
`expr $a \* $b` a*b
`expr $a / $b` a/b
`expr $a % $b` a%b
a = $b 赋值
[ $a == $b ] 判断是否相等
[ $a != $b ] 判断是否不相等
注:条件表达式放在中括号内并且两边都有空格
2.关系运算符(只支持数字,不支持字符串,除非字符串的值是数字)
-eq 检测是否相等
-ne 检测是否不相等
-gt 大于
-ge 大于等于
-lt 小于
-le 小于等于
eg:a=10,b=20
[ $a -eq $b ] #返回false
3.布尔运算符
! 非
-o 或
-a 与
|| 或
&& 与
-o , -a 和 ||,&&效果相同
4.字符串运算符
[ $a = $b ] 判断两字符串是否相等,相等返回true
[ $a != $b ] 判断两字符串是否不相等,不相等返回true
[ -z $a ] 检测a的长度是否为0,为0返回 true
[ -n $a ] 检测a的长度是否不为0,不为0返回true
[ $a ] 检测a是否为空,不为空返回 true
5.文件测试运算符
-b 检测文件是否为块设备文件
-c 检测文件是否为字符设备文件
-d 是否为目录
-f 是否为普通文件
-p 是否为有名管道
-r 是否为可读
-w 是否为可写
-x 是否为可执行
-s 是否为空
-e 检测文件(包括目录)是否存在
eg:[ -b $file ] #file="/var/www/index.html"