shell编程中常用的比较操作符
在任何程式的编写中都离不开条件判断语句,shell编程中也是如此,这里整理了一些在shell的test命令中经常使用的比较操作符,主要分为数值比较、字符串比较和文件比较。
n1 -eq n2 | 检查n1是否等n2 |
n1 -ge n2 | 检查n1是否大于或等于n2 |
n1 -gt n2 | 检查n1是否大于n2 |
n1 -le n2 | 检查n1是否小于或等于n2 |
n1 -lt n2 | 检查n1是否小于n2 |
n1 -ne n2 | 检查n1是否不等于n2 |
str1 = str2 | 检查str1是否和str2相同 |
str1 != str2 | 检查str1是否和str2不同 |
str1 < str2 | 检查str1是否比str2小 |
str1 > str2 | 检查str1是否比str2大 |
-n str1 | 检查str1的长度是否非0 |
-z str1 | 检查str1的长度是否为0 |
-d file | 检查file是否存在并且是一个目录 |
-e file | 检查file是否存在 |
-f file | 检查file是否存在并且是一个文件 |
-r file | 检查file是否存在并且可读 |
-s file | 检查file是否存在并且非空 |
-w file | 检查file是否存在并且可写 |
-x file | 检查file是否存在并且可被执行 |
-O file | 检查file是否存在并且属于当前用户所有 |
-G file | 检查file是否存在并且默认组与当前用户相同 |
file1 -nt file2 | 检查file1是否比file2新 |
file1 -ot file2 | 检查file1是否比file2旧 |