数值比较
数字比较使用 -eq 运算符和朋友
if [[ $num1 -eq $num2 ]]; then
echo "$num1 == $num2"
fi
if [[ $num1 -le $num2 ]]; then
echo "$num1 <= $num2"
fi
有六个数字运算符:
-eq相等-ne不相等-le少于或等于-lt不到-ge大于或等于-gt大于
请注意,[[ … ]] 中的 < 和 > 运算符比较字符串,而不是数字。
if [[ 9 -lt 10 ]]; then
echo "9 is before 10 in numeric order"
fi
if [[ 9 > 10 ]]; then
echo "9 is after 10 in lexicographic order"
fi
双方必须是以十进制(或八进制,前导零)写的数字。或者,使用 ((…)) 算术表达式语法,该语法以类似 C / Java / …的语法执行整数计算。
x=2
if ((2*x == 4)); then
echo "2 times 2 is 4"
fi
((x += 1))
echo "2 plus 1 is $x"