全部博文(842)
分类:
2012-03-28 14:08:44
原文地址:Linux Shell编程(三)--条件测试 作者:yourtommy
例:test 1 -gt 2测试1是否大于2。test通常与if、while、until等语句一起使用。
表达式有以下类型:
测试文件属性
-b file:如果文件 存在且为块设备(Block special),则值为真;
-c file:如果文件存在且为字符设备(Character special),则值为真;
-r file:如果文件存在且为只读,则值为真;
-w file:如果文件存在且可写入,则值为真;
-x file:如果文件存在且可执行,则值为真;
-s file:如果文件存在且长度大于零,则值为真;
-d file:如果文件是一个目录,则值为真;
-f file:如果文件是一个普通文件,则值为真;
-e file:如果文件存在,则值为真。
测试数值
n1 -eq n2:n1等于n2,则值为真;
n1 -ne n2:n1不等于n2,则值为真;
n1 -gt n2:n1大于n2,则值为真;
n1 -lt n2:n1小于n2,则值为真;
n1 -ge n2:n1大于等于n2,则值为真;
n1 -le n2:n1小于等于n2,则值为真;
测试字符串
-z s1:如果s1长度为零,则值为真;
-n s1:如果s1长度不为零,则值为真;
s1 = s2:如果s1与s2相等,则值为真;
s1 != s2:如果s1与s2不等,则值为真;
s1:如果s1不是空串,则值为真;
测试逻辑运算符
-a:二元“与”操作符。例:if test $x -gt $y -a $y -gt $z。
-o:二元“或”操作符。
!:一元“非”操作符。例:if test ! $x -eq $y。