02 Shell 运算符,条件判断
Shell运算符
(1)"$((运算符))" 或 "$[运算符]"
(2)expr +,-,\*,/,% 加,减,乘,除,取余
例如:
① expr 2 + 3 结果:5
② expr 3 - 2 结果:1
③ expr `expr 2 + 3 ` \* 4 结果:20
s=$[(2+3)*4] echo $s 结果:20
Shell条件判断
[condition] 注:condition前后都要空格,条件非空即为true,[atguigu]返回true,[]返回false
常用的条件判断
(1)两个整数之间的比较
= 字符串比较
-lt 小于(less than) -le 小于等于(less equal)
-eq 等于 (equal) -gt 大于(greater than)
-ge 大于等于(greater equal) -ne 不等于 (not equal)
例如:[ 23 -ge 22 ] echo $0 :0
(2)按照文件权限进行判断
-r 有读的权限(read)
-w 有写的权限(write)
-x 有执行的权限(execute)
例如:[ -w hello.sh ] echo $0 :0
(3)按照文件类型进行判断
-f 文件存在,并且是一个常规文件(file)
-e 文件存在(existence)
-d 文件存在并是一个目录 (directory)
(4)多条件判断 (&&表示前一条命令执行成功时,才执行后一条命令,|| 表示上一条命令执行失败后,才执行下一条)