數值比較
數字比較使用 -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"