shell-条件判断

shell-条件判断

起男 407 2022-09-21

shell-条件判断

语法

test 条件  

可以使用$?查看判断结果,0为true,1为false

[ 条件 ]  注意:条件前后有空格

条件非空即为true,[xxx]返回true,[ ]返回false

并且注意条件判断符号左右一点要空格,否则就是一个字符串了

常用判断条件

两个整数之间比较

判断条件 说明
-eq 等于(equal)
-ne 不等于(not equal)
-lt 小于(less than)
-le 小于等于(less equal)
-gt 大于(greater then)
-ge 大于等于(greater equal)

两个字符串之间比较

判断条件 说明
= 相等
!= 不相等

按照文件权限进行判断

判断条件 说明
-r 有读的权限(read)
-w 有写的权限(write)
-x 有执行的权限(execute)

按照文件类型进行判断

条件判断 说明
-e 文件存在(existence)
-f 文件存在并且是一个常规的文件(file)
-d 文件存在并且是一个目录(directory)

多条件判断

  • &&:前一条命令执行成功时,才执行后一条命令(逻辑与)
  • ||:表示上一条命令执行失败后,才执行下一条命令(逻辑或)

可以实现类似与三元运算符的效果:

[ 1 -eq 1 ] && echo ok || echo no