Shell 双括号概述
1. 比较两个数的大小
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
#!/bin/bash ## 定义变量 a=1 b=3 ## 方法1,一个方括号,需要转义 if [ $a \> $b ];then echo "方法1:yes" else echo "方法1:no" fi ## 方法2,两个小括号 if (( $a > $b )) ;then echo "方法2:yes" else echo "方法2:no" fi ## 方法3,两个方括号 if [[ $a > $b ]];then echo "方法3:yes" else echo "方法3:no" fi ## 方法4,一个方括号,gt if [ $a -gt $b ];then echo "方法4:yes" else echo "方法4:no" fi
结果:
在bash中,若在其内使用运算符 >、>=、<、<=、==、!= 时,最好使用 (( )),有时使用[[]] 会出现一些错误。
如:
#!/bin/bash ## 定义变量 a=1 b=3 ## 方法1,一个方括号,需要转义 if [[ $a != $b && 10 > 5 ]];then echo "方法1:yes" else echo "方法1:no" fi ## 方法2,一个方括号,需要转义 if (( $a != $b && 10 > 5 ));then echo "方法2:yes" else echo "方法2:no" fi
结果:
-------> by kimbo_zhang