条件测试
test 条件表达式
[ 条件表达式 ]
文件测试
- -d:测试是否为目录
- -e:测试文件或目录是否存在
- -f:测试是否为文件
- -r:测试当前用户是否可读
- -x:测试当前用户是否可执行
- -w:测试当前用户是否可写入
例:
条件成立
条件不成立
可以结合&&和echo命令一起使用
&& 表示 而且
例:
条件成立输入 OK
条件不成立不输出
也可以使用 [[ ]] 来进行条件测试
如:
不成立输入1
成立输入0
其他选项
- -nt:判断文件A是否比文件B新
- -ot:判断文件A是否比文件B旧
- -ef:判断两个文件是否为同一个文件,判断是否指向同一个inode
a是否比b旧
a是否和b是同一个文件
a和c是否为同一个inode
整数值比较
- -eq:等于
- -ne:不等于
- -gt:大于
- -ge:大于等于
- -lt:小于
- -le:小于等于
字符串比较
- ==:等于
- !=:不等于
- -z:检查字符串是否为空(对于未定义或赋值的变量将是为空串)
逻辑测试
- &&:逻辑与,表示“而且”
- ||:逻辑或,表示“或者”
- !:逻辑否,表示“不”
例:
查看内核版本号
提取主次版本号
成立输出OK