查看: 2108|回复: 1
打印 上一主题 下一主题

Shell运算符:Shell布尔运算符详解

[复制链接]
跳转到指定楼层
沙发
发表于 2014-8-10 09:04:17 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 lucky80204 于 2014-8-10 09:06 编辑

布尔运算符

先来看一个布尔运算符的例子:
  1. #!/bin/sh
  2. a=10
  3. b=20
  4. if [ $a != $b ]
  5. then
  6.    echo "$a != $b : a is not equal to b"
  7. else
  8.    echo "$a != $b: a is equal to b"
  9. fi
  10. if [ $a -lt 100 -a $b -gt 15 ]
  11. then
  12.    echo "$a -lt 100 -a $b -gt 15 : returns true"
  13. else
  14.    echo "$a -lt 100 -a $b -gt 15 : returns false"
  15. fi
  16. if [ $a -lt 100 -o $b -gt 100 ]
  17. then
  18.    echo "$a -lt 100 -o $b -gt 100 : returns true"
  19. else
  20.    echo "$a -lt 100 -o $b -gt 100 : returns false"
  21. fi
  22. if [ $a -lt 5 -o $b -gt 100 ]
  23. then
  24.    echo "$a -lt 100 -o $b -gt 100 : returns true"
  25. else
  26.    echo "$a -lt 100 -o $b -gt 100 : returns false"
  27. fi
复制代码


运行结果:
  1. 10 != 20 : a is not equal to b
  2. 10 -lt 100 -a 20 -gt 15 : returns true
  3. 10 -lt 100 -o 20 -gt 100 : returns true
  4. 10 -lt 5 -o 20 -gt 100 : returns false
复制代码

布尔运算符列
运算符 说明 举例
! 非运算,表达式为 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。







回复

使用道具 举报

板凳
发表于 2014-8-10 09:07:07 | 只看该作者
楼主的资料太高端,膜拜
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 加入因仑

本版积分规则

快速回复 返回顶部 返回列表