shell条件判断
1、语法:
[ condition ] (condition前后要有空格)
注意:条件非空即为true,[zby]返回true,[] 返回false
2、常用条件判断
-
两个整数之间比较
= 字符串比较
-lt 小于(less than) -le 小于等于 (less equal)
-eq 等于 (equal) -gt 大于 (greater than)
-ge 大于等于 (greater equal) -ne不等于 (Not equal)
-
按照文件权限进行判断
-r 有读的权限(read) -w 有写的权限 (write)
-x 有执行的权限 (execute)
-
按照文件类型进行判断
-f 文件存在并且是一个常规文件(file)
-e 文件存在 (existence)
-d 文件存在并是一个目录(directory)
范例:23是否大于等于22
[23 -ge 22]
范例:查看helloworld.sh 是否具有执行权限
[ -x /home/zby/helloworld.sh]
用户、所在组合其他组用户,只要其中一种有执行权限,返回结果就有执行权限
范例:判断/home/zby/hello.txt是否存在
[ -e /home/zby/hello.txt ]
- 多条件判断(&&表示前一条命令执行成功时,才执行后一条命令,|| 表示上一条命令执行失败后,才执行下一条命令)
&&(前面表达式返回false,后面语句不执行)与&(前后都执行)