shell變數數學運算
阿新 • • 發佈:2019-02-12
# 本指令碼說明shell指令碼中變數運算的用法
# 錯誤的用法
var=1
var=$var+1
echo $var
輸出:1+1
# 第一種用法,let
var=1
let "var+=1"
echo $var
輸出:2
# 也可以不加""
let var=$var+1
echo $var
輸出:3
# 也可以不加$直接引用
let var+=1
echo $var
輸出:4
# 方冪運算用**
let var=var**2
echo $var
輸出:16
# 第二種用法 (())
((var+=1))
echo $var
輸出:17
# 第三種用法 $[] []中引用的變數要加$
var=$[$var+1]
echo $var
輸出:18
# 第四種 使用 expr
var=`expr $var / 10`
echo $var
輸出:1
# 前面的都僅支援整數運算
# 第五種 bc 支援浮點
var=`echo "$var * 10.5" |bc`
echo $var
輸出:10.5
# 第六種 awk 支援各種運算,awk本身帶很多數學運算函式
var=`echo "$var 1" |awk '{printf("%g", sin($1 + $2))}'`
echo $var
輸出:-0。85