1、
2、
3、
##上面简单的三个小实例是shell条件测试中的字符测试
条件测试类型:
整数测试
-eq: 测试两个整数是否相等;比如 $A -eq $B
-ne: 测试两个整数是否不等;不等,为真;相等,为假;
-gt: 测试一个数是否大于另一个数;大于,为真;否则,为假;
-lt: 测试一个数是否小于另一个数;小于,为真;否则,为假;
-ge: 大于或等于
-le:小于或等于
字符测试
== : 测试两个字符串是否相等,相等为真,不等为假。
!= : 测试两个字符串是否不等,不等为真,相等为假。
-n string : 测试指定的字符串是否为空,空为真,不空为假。
-z string :测试指定的字符串是否为不空,不空为真,空为假。
< 小于(需要双括号),如:(("$a" < "$b"))
<= 小于等于(需要双括号),如:(("$a" <= "$b"))
> 大于(需要双括号),如:(("$a" > "$b"))
>= 大于等于(需要双括号),如:(("$a" >= "$b"))
文件测试
-e 文件存在
-f file 是一个普通文件
-s 文件长度不为 0
-d 文件是个目录-r 文件具有读权限
-w 文件具有写权限
-x 文件具有执行权限
test的条件判断
判断字符串
test –n 字符串 #字符串的长度非零
test –z 字符串 #字符串的长度是否为零
test 字符串1=字符串2 #字符串是否相等,若相等返回true
test 字符串1!=字符串2 #字符串是否不等,若不等反悔false
判断整数
test 整数1 -eq 整数2 #整数相等
test 整数1 -ge 整数2 #整数1大于等于整数2
test 整数1 -gt 整数2 #整数1大于整数2
test 整数1 -le 整数2 #整数1小于等于整数2
test 整数1 -lt 整数2 #整数1小于整数2
test 整数1 -ne 整数2 #整数1不等于整数2
文件判断
test -e 文件存在
test -f file 是一个普通文件
test -s 文件长度不为 0
test -d 文件是个目录-r 文件具有读权限
test -w 文件具有写权限
test -x 文件具有执行权限