1.文件测试
test和[]命令的文件测试用于判断一个文件是否满足特定的条件
常用test选项:
-b file #当file是块设备文件时返回真
-c file #当file是字符文件时返回真
-d pathname #当是目录时返回真
-e pathname #当指定的文件或目录存在时返回真
-f file #当是常规文件时返回真
-g pathname #当指定的文件或目录设置了SGID位时返回真
-h file #当是符号链接文件时返回真
-p file #当是命名管道时返回真
-r pathname #当指定的文件或目录设置了可读权限时返回真
-s file #当file存在且大小为0时返回真
-u pathname #当指定的文件或目录设置了SUID位时返回真
-w pathname #当设置可写权限时返回真
-x pathname #当设置可执行权限时返回真
2.数字比较
用法test int1 option int2 或者[int1 option int2]
option的选项有:
-eq #如果相等,返回真
-ne #不相等,返回真
-lt #如果int1小于int2,返回真
-le #如果int1小于或等于int2,返回真
-gt #如果int1大于int2,返回真
-ge #如果int1大于或等于int2,返回真
3.复合表达式
!expr #“非”运算,当expr为假时返回真
expr1 -a expr2 #“与”运算,当expr1和expr2同时为真时返回真
expr1 -o expr2 #“或”运算,expr1或expr2为真时返回真