Linux中的test命令
test命令可以检测一个文件或者目录是否存在,或者对一个文件或目录的读写权限等等
常见语法
test -选项 文件或目录
-e 文件名是否存在,存在$?返回0也就是true
-f 文件名是否存在,且为文件 存在$?返回0
-d 文件名是否存在,且为目录 存在$?返回0
-L 文件名是否存在,且为链接文件 存在$?返回0
-r -w -x 这三个是单选项,文件名是否存在,并且具有可读,可写入,可执行权限 若存在$?返回0
-u -g 文件名是否存在,并且具有suid,或者sgid 存在$?返回0
-s 文件是否存在并且为非空文件 如果符合 $?返回0
-nt file1 file 第一个文件是否新第二个文件新
-ot file1 file2 第一个文件是否比第二个文件旧
-ef file1 file2 比较两个文件是否为同一个文件 只要比较两个文件是否指向同一个inode
-eq 两个数值相等
-ne 两个数值不相等
-gt n1>n2
-lt n1
-ge n1>=n2
-le n2<=n2
-z string 判断字符串是否为0或空
-n string 判断字符串是否不为空 n可以省略
str1==str2判断两个字符串是否相等
str1!=str2判断两个字符串是否不等
-a 同时满足 -r file1 -a -x file1 判断是否file同时有rx权限
-o 或
-! 与后面正常结果相反