1, Linux shell 變量的基本運算
1.1 let 命令能夠用於直接執行基本操做:
當我使用 let 的時候,咱們不使用 $ 符號引用變量。let
1.2 「 [ ] 「運算符跟 let 命令很類似:
「[ ]」 運算符裏面能夠使用 $ 符號引用變量,同時支持變量名與運算符之間不帶空格。$[[ ]]
1.3 」 (( )) 」 運算符跟 」 [ ] 」 運算符同樣:
一樣支持使用 $ 符號引用變量進行基本運算,同時支持變量名與運算符之間不帶空格。$(())
1.4 「expr」 命令一樣能夠用於變量的基本運算:
「expr」 命令一樣支持 $ 符號引用變量進行基本運算,可是變量與運算符之間必須使用空格做爲分隔符;
在使用 「expr」 命令對變量進行運算後,整個表達式必須使用 「 · expression · 」 的模式賦值給變量,即包含在 」 ` 」 符裏面, 而且等效於 「 $( expression ) 」 模式。
上面所述的四種shell中執行變量運算的方式中不支持浮點運算!
2, Linux shell 中使用 bc 命令實現高級數學運算:
bc 命令使用 標準輸入 stdin 做爲輸入;
bc 是一個支持精確的浮點運算的高級計算器;
bc 擁有至關多的輸入選項,而且支持數學函數調用;
2.1 bc 命令使用標準輸入 stdin 做爲輸入,而且支持浮點運算:
2.2 bc 命令支持運算精度設置:經過附加參數能夠給 bc 指定運算精度; 附加參數使用分號 」 ; 」 做爲分隔符;
使用分號 」 ; 「 加入附加參數 scale ,指定精度爲位小數;
2.3 使用 bc 進行數值的記數進制間轉換:
經過 ibase=value 做爲附加參數,指定輸入變量的記數進制; 經過 obase=value 做爲附加參數,指定輸出變量的記數進制;
2.4 使用 bc 調用數學公式進行高級數學運算:
」 sqrt(value) 」 執行 value 的開方運算; 」 value^index 」 執行 value 的冪運算;