Shell | 条件判断

基本语法:

(1)test condition

(2)[ condition ](注意 condition 前后要有空格

注意:条件非空即为 true,[ atguigu ]返回 true,[ ] 返回 false。

常用判断条件:

(1)两个整数之间比较

-eq 等于(equal) -ne 不等于(not equal)
-lt 小于(less than) -le 小于等于(less equal)
-gt 大于(greater than) -ge 大于等于(greater equal)

注:如果是字符串之间的比较 ,用等号“=”判断相等;用“!=”判断不等。

(2)按照文件权限进行判断

-r 有读的权限(read)
-w 有写的权限(write)
-x 有执行的权限(execute)

(3)按照文件类型进行判断

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

例如:

(1)23 是否大于等于 22

$ [ 23 -ge 22 ]
$ echo $?
0

(2)helloworld.sh 是否具有写权限

$ [ -w helloworld.sh ]
$ echo $?
0

(3)/home/zlq/cls.txt 目录中的文件是否存在

$ [ -e /home/zlq/cls.txt ]
$ echo $?
1

(4)多条件判断(&& 表示前一条命令执行成功时,才执行后一条命令,|| 表示上一条命令执行失败后,才执行下一条命令)

$ [ atguigu ] && echo OK || echo notOK
OK
$ [ ] && echo OK || echo notOK
notOK
posted @ 2023-07-13 12:21  张Zong在修行  阅读(46)  评论(0编辑  收藏  举报