条件测试类型

1.整数测试。
2.字符测试。
3.文件测试。
说明:根据状态返回值($?),判断测试执行结果。

条件测试表达式

[ expression ]
[[ expression ]]
test expression
注:中括号左右两边要有空格。

整数比较:

格式:[ $A 判断类型  $B ]
-eq:测试$A是否等于$B
-ne:测试$A是否不等于$B
-gt:测试$A是否大于$B
-lt:测试$A是否小于$B
-ge:测试$A是否大于等于$B
-le:测试$A是否小于等于$B


命令间的逻辑关系:

格式:A 逻辑判断 B
逻辑与:&&。如果A为真,则执行B。如果A为假,则不执行B。
逻辑或:||。如果A为真,则不执行B。如果A为假,则执行B。
逻辑非:!。格式为:!A,如果A为真,则! A为假,如果A为假,则!A为真。

示例1:

[root@Server3 Scripts]# id frame &> /dev/null && echo "Hello frame"
Hello frame
[root@Server3 Scripts]# id user1 &> /dev/null && echo "Hello user1"
[root@Server3 Scripts]#

示例2:

[root@Server3 Scripts]# id user1 &> /dev/null && echo "Hello user1" || useradd user1
[root@Server3 Scripts]# id user1
uid=502(user1) gid=503(user1) groups=503(user1)
[root@Server3 Scripts]#