shell if 表达式几则

1、shell表达式

a=3 ; b=2 ; c=4

if (( a > b )) && (( a < c ))

或者

if [[ $a > $b ]] && [[ $a < $c ]]

或者

if [ $a -gt $b -a $a -lt $c ]

2、-o = or -a = and , 但我一向只用 || 或者 &&

3、其它解释

-ne 比较数字 (numberic) ; != 比较字符 (string), 但后者拿来比较数字也可,只是不是标准用法。

-lt 是等同 < , 但 < 只能在 shell 的数值操作符 (( )) 或者 逻缉操作符 [[ ]] 才可使用-lt -eq -gt -ge-le 这些是 test , 就是 [ ] 这个内建命令使用的条件操作符, 比较数字用; = != 比较字符用; == 这个在 [[ ]] 中用,可用来比对正规表示式, 但用在 [ ] 也可,只是不太正统用法。

此外test表达式[]还有其它很多可比较的,如文件,目录的比较等。

原文:

http://zhidao.baidu.com/question/107290842.html

http://www.233.com/linux/fudao/20091201/095719620-2.html

原文地址:https://www.cnblogs.com/mydomain/p/2802396.html