shell(八)

179 阅读1分钟

本文已参与「新人创作礼」活动,一起开启掘金创作之路。

文件类型判断

命令格式:

test -e filename  # 判断文件是否存在
测试参数代表意义
-e文件是否存在
-f是否为文件
-d是否为目录
文件权限判断

命令格式:

test -r filename  # 判断文件是否可读
测试参数代表意义
-r文件是否可读
-w文件是否可写
-x文件是否可执行
-s是否为非空文件
整数间的比较

命令格式:

test $a -eq $b  # a是否等于b
测试参数代表意义
-eqa是否等于b
-nea是否不等于b
-gta是否大于b
-lta是否小于b
-gea是否大于等于b
-lea是否小于等于b
字符串比较
测试参数代表意义
test -z STRING判断STRING是否为空,如果为空,则返回true
test -n STRING判断STRING是否非空,如果非空,则返回true(-n可以省略)
test str1 == str2判断str1是否等于str2
test str1 != str2判断str1是否不等于str2
多重条件判定

多重条件判定命令格式:

test -r filename -a -x filename
测试参数代表意义
-a两条件是否同时成立
-o两条件是否至少一个成立
!取反。如 test ! -x file,当file不可执行时,返回true