簡單的計算器,執行算術表達式。
let arg [arg ...]
arg:算術表達式
當let最后一個執行的表達式的計算結果為0時返回1,否則返回0。
當let執行的表達式的除數為0時,返回1并報錯。
|運算符|描述|
|:-------:|:-------:|
|id++, id--|變量后增量、變量后減量|
|++id, --id|變量預增量、變量預減量|
|-, +|正號、負號|
|!, ~|邏輯否、按位取反|
|**|冪運算|
|*, /, %|乘法、除法、取余|
|+, -|加法、減法|
|<<, >>|按位左移、右移|
|<=, >=, <, >|比較|
|==, !=|等于、不等于|
|&|按位與|
|^|按位異或|
|\||按位或|
|&&|邏輯與|
|\|\||邏輯或|
|expr ? expr : expr|條件運算符(三元運算符)|
|=, *=, /=, %=, +=, -=,<<=, >>=, &=, ^=, \|=|賦值|
# 嘗試直接在終端中執行算術表達式(就像在python的IDLE)。
3+4
bash:3+4:command not found...
# 換一種方式。
3 + 4
bash:3:command not found...
# 看來不行。
# let命令賦值。
let a=3**4
echo ${a}
# 顯示81。
# ((...))和let命令等效。
((a=3**4))
# let常用于變量賦值,而外部命令expr可直接返回表達式的值。
let 3+4
# 沒有顯示7。
# 執行后顯示7,注意空格。
expr 3 + 4
# 條件表達式。
if ((8>4)); then
echo '8 is greater than 4.'
else
echo 'error'
fi
# 注意空格。
if [[ 12 -le 10 ]]; then
echo 'error'
else
echo '12 is greater than 10.'
fi
# 可以通過declare命令設置整型屬性的方法來進行算術運算。
# local命令與此類似。
# 沒有指定整型屬性,輸出為字符串'a+b'。
declare a=3 b=4 c
c=a+b
echo ${c}
# 不過可以使用以下方式賦值。
c=$((a+b))
echo ${c}
# 顯示7
# 設置了整型屬性就可以直接加了。
declare -i a=3 b=4 c
c=a+b
echo ${c}
# 同上。
declare -i a
a=2*3
echo ${a}
# 顯示6。
該命令是bash內建命令,相關的幫助信息請查看help命令。
執行算術計算的命令除了let,還有外部命令expr、bc等。