bash算数运算
一、算術運算符
**:對兩個變量做冪運算 ?
其他:+ - * / ?% ? ? ? += ? -= ?*= ? /= ? %=
?
二、運算順序
如果沒有expr或$[]更改運算順序,則會將運算式以字符串的形式賦值
ehco 1+2; ? ? ? ? ? ?結果會是 ?1+2 ? ?!!
辦法1:用expr表示后面的表達式為一個數學運算
注意 + 前后一定要有空格!!否則不會進行算數運算
echo `expr 1 + 2`辦法2:用$[]表示數學運算。將一個數學運算寫到$[]符號的中括號中,中括號中的內容將先進行數學運算
a=$[$a + 1]?
三、一個簡單實例
實現數學函數S=3(x^y)+4x^2+5y+6的運算
注:$1, $2 分別為第一個變量,第二個變量的值
./test.sh 2 4 #!/bin/bash#test.sh
s=0 #定義一個求和變量,初值為0。
t=`expr $1**$2` #用expr改變運算順序,求x的y次方。
t=$[t*3] #t乘以3。
s=$[s+t] #結果相加。
t=$[$1**2] #求x的平方。
t=$[t*4] #結果乘以4。
s=$[s+t] #結果相加。
t=`expr $2*5` #求5y的值。
s=$[s+t] #結果相加。
s=$[s+6] #結果加上6。
echo $s #輸出結果。
與50位技術專家面對面20年技術見證,附贈技術全景圖
總結
- 上一篇: 第五章:数据库交换开发篇
- 下一篇: 法语助手(法语翻译成中文)