if [ $a \> $b ]
if [[ $a > $b]]
if ((a > b))
a=2
b=1
[[ "$a"-gt"$b" ]] #返回 1, 因为当成一个整体字符串,非空
[[ "$a"-lt"$b" ]] #返回 1, 因为当成一个整体字符串,非空
[[ "$a" -gt "$b" ]] #返回 1,因为 2 > 1
[[ "$a" -lt "$b" ]] #返回 0,因为 2 > 1
[[ "$a" -lt"$b" ]] #报错,缺少比较运算符,因为 把$a 和 -lt$b当成了2个字符串
[[ "$a"-lt "$b" ]] #报错,同上
a=2.2
b=1.1
[[ "$a"-gt"$b" ]] #返回 1, 因为当成一个整体字符串,非空
[[ "$a"-lt"$b" ]] #返回 1, 因为当成一个整体字符串,非空
[[ "$a" -gt "$b" ]] #报错[[: 2.2: syntax error: invalid arithmetic operator (error token is ".2"),因为识别不了2.2为整数
[[ "$a" -lt "$b" ]] #报错, 同上
[ "$a"\>="$b" ] #正确
[ "$a" \>= "$b" ] #错误
[[ "$a">="$b" ]] #正确
[[ "$a" >= "$b" ]] #错误
原文:https://www.cnblogs.com/erichf/p/13458200.html