条件判断
test 命令 和 [ 条件表达式 ]
一、test命令
1、命令格式:test 参数 文件名
2、常用参数:
-e 判断文件是否存在
例:test -e 1.txt 判断文件1.txt是否存在
如果1.txt存在则为真(返回值是0)(echo $?可以查看返回值)
-r -w -x 判断相对应的权限(读、写、执行)
-s 判断文件存在且非空(返回值非0,则为空文件)
-d 如果过文件存在且为目录则为真(判断目录是否存在)
-f 如果文件存在且为普通文件则为真
二、[ 条件表达式 ]
1、命令格式:[ 参数 文件名 ]
例:
[ -e 1.txt ] 判断1.txt存不存在
注意:可使用的参数与test命令一致
*中括号两边必须有空格
三、字符串判断(一般用于变量值的判断)
-z string 判断<字符串>是否为空
-n string 判断<字符串>是否为非空
string1 = string2 判断<字符串>是否为相等
string1 != string2 判断<字符串>是否为不相等
四、数值判断
比较符号:
-eq 等于
-ne 不等于
-gt 大于
-lt 小于
-ge 大于等于
-le 小于等于
例:
[ 4 -gt 5 ] 假
[ 4 -gt 3 ] 真
可以是变量进行比较 [ "$a" -gt 5 ] (真假由变量的值来决定)