if中[ ]实际上调用的是test的一种快捷方法。bash的数值和字符串比较运算符:

字符串数值为真,如果
x = yx -eq y 
x != yx -ne y 
x < yx -lt y 
x <= yx -le y 
x > yx -gt y 
x >= y x -ge y 
-n x x不为空
-z x x为空

文件属性判断

-d file: file存在且为目录(dict)

-e file:file存在(exist)

-f file:file存在且为普通文件(file)

-r file:用户有file的读权限(read)

-s file:file存在且不为空(?)

-w file:用户有file的写权限(write)

file1 -nt file2:file1比file2新(new than)

file1 -ot file2:file1比file2旧(old than)

05-11 21:47