1.文件属性判断符:
-e :判断文件是否存在,存在则为真
-f:判断文件存在且是常规文件则为真
-d:文件存在且是一个目录则为真
-c:文件存在且是一个特殊字符文件则为真
-b:文件存在且是一个特殊块文件则为真
-g:文件存在且设置了sgid则为真
-u:文件存在且设置了suid则为真
-r:文件存在且是可读文件则为真
-w:文件存在且是可写文件则为真
-x:文件存在且是可执行文件则为真
-s:文件存在且不为空则为真
-nt:用于比较两个文件的新旧,格式<file1>-nt<file2>,如果file1比file2新则为真(指修改时间mtime)
-ot:用于比较两个文件的新旧,格式<file1>-ot<file2>,如果file1比file2旧则为真(指修改时间mtime)
2.字符串判断:
-z:判断字符串是否为空,为空则为真
-n:字串不为空则为真
=:判断两个字串是否相同,相同为真
!=:判断两个字串是否不同,不同为真
<:判断前一个字串的排序是否在后一个字串前面,在前面则为真(ASCII码顺序)
>:判断前一个字串的排序是否在后一个字串后面,在后面则为真(ASCII码顺序)
3.数字判断符:
-eq:判断两个数字是否相等,相等则为真
-ne:判断两个数字书否不等,不等则为真
-le:前一个数字小于等于后一个数字,则为真
-ge:前一个数字大于等于后一个数字,则为真
-lt:前一个数字小于后一个数字,则为真
-gt:前一个数字大于后一个数字,则为真
4.[[]]和[]的区别:[[]]是一个关键字
在[]中"<"和">"需要转义,但在[[]]中不需要转义:
[[]]中可以使用=或者=~(正则匹配符号),在[]中不能使用。