下表列出了常用的布尔运算符,假定变量 a 为 10,变量 b 为 20:
运算符  | 说明  | 举例  | 
!  | 非运算,表达式为 true 则返回 false,否则返回 true。  | [ ! false ] 返回 true。  | 
-o  | 或运算,有一个表达式为 true 则返回 true。  | [ $a -lt 20 -o $b -gt 100 ] 返回 true。  | 
-a  | 与运算,两个表达式都为 true 才返回 true。  | [ $a -lt 20 -a $b -gt 100 ] 返回 false。  | 
实例
布尔运算符实例如下:
实例
#!/bin/bash
# author:菜鸟教程
# url:http://www.runoob.com
a=10
b=20
if [ $a != $b ]
then
echo "$a != $b : a 不等于 b"
else
echo "$a == $b: a 等于 b"
fi
if [ $a -lt 100 -a $b -gt 15 ]
then
echo "$a 小于 100 且 $b 大于 15 : 返回 true"
else
echo "$a 小于 100 且 $b 大于 15 : 返回 false"
fi
if [ $a -lt 100 -o $b -gt 100 ]
then
echo "$a 小于 100 或 $b 大于 100 : 返回 true"
else
echo "$a 小于 100 或 $b 大于 100 : 返回 false"
fi
if [ $a -lt 5 -o $b -gt 100 ]
then
echo "$a 小于 5 或 $b 大于 100 : 返回 true"
else
echo "$a 小于 5 或 $b 大于 100 : 返回 false"
fi
执行脚本,输出结果如下所示:
10 != 20 : a 不等于 b
10 小于 100 且 20 大于 15 : 返回 true
10 小于 100 或 20 大于 100 : 返回 true
10 小于 5 或 20 大于 100 : 返回 false
逻辑运算符
以下介绍 Shell 的逻辑运算符,假定变量 a 为 10,变量 b 为 20:
运算符  | 说明  | 举例  | 
&&  | 逻辑的 AND  | [[ $a -lt 100 && $b -gt 100 ]] 返回 false  | 
||  | 逻辑的 OR  | [[ $a -lt 100 || $b -gt 100 ]] 返回 true  | 
实例
逻辑运算符实例如下:
实例
#!/bin/bash
# author:菜鸟教程
# url:http://www.runoob.com
a=10
b=20
if [[ $a -lt 100 && $b -gt 100 ]]
then
echo "返回 true"
else
echo "返回 false"
fi
if [[ $a -lt 100 || $b -gt 100 ]]
then
echo "返回 true"
else
echo "返回 false"
fi
执行脚本,输出结果如下所示:
返回 false
返回 true











