条件测试
1.测试语句
【语法格式】
格式1: test <测试表达式>
格式2: [<测试表达式>]
格式3:[[测试表达式]]
格式1和2是等价的
【语法例子】
[smallboy@msater]$ test -f file && echo 1 || echo 0(当前目前下是否存在file文件,存在输出1,不存在输出0)
[smallboy@msater]$ [ -f file ] && echo 1 || echo 0(当前目前下是否存在file文件,存在输出1,不存在输出0)
[smallboy@msater]$ [[ -f file ]] && echo 1 || echo 0(当前目前下是否存在file文件,存在输出1,不存在输出0)
[smallboy@msater]$ [[ -f file1 && -f file2 ]] && echo 1 || echo 0(中括号里面有&&,则必须使用双中括号)
2 文件测试操作符
-f 文件 判断文件是否存在且为普通文件,存在为真
-d 目录 判断目录是否存在,存在为真
-s 文件 判断文件存在且不为空(大小不为0),则为真
-r 文件 判断文件存在且可读,则为真
-x 文件 判断文件存在且可执行,则为真
-e 文件 判断文件是否存在,存在为真
3 字符串测试操作符
-z 字符串 若串长度为0,则为真,z可以理解为zero的缩写
-n 字符串 若串长度不为0,则为真,
“字符串” = “字符串” 若两字符串相等,则为真
“字符串” != “字符串” 若两字符串不相等,则为真
4. test命令的用法
判断字符串长度是否为0
[smallboy@msater]$ test -z “$string” || echo 1
判断字符串长度是否不为0
[smallboy@msater]$ test -n “$string” || echh 0