第一種,使用((表示式)):
第二種使用let:a=3
((b=a+2))
echo $b
let "c=$a+4"
echo $c
第三種,使用expr表示式(注意空格不能少):
第四種,比較常用,就是放在$[ expression]中,其實這才是bash的推薦的標準處理方法#注意空格和反引號
d=`expr 4 + 3`
echo $d
在c風格的for迴圈中,則可以如下使用:a=4
b=$[$a-9]
#b=-5
echo $b
#!/bin/bash
for (( a=1, b=10; a<=10; a++, b-- ))
do ((c=a*b))
echo $c
done
一般bash只能處理整數運算,要處理浮點書,必須借助於bc(bash計算器),基本格式如下:
variable=`echo "option;expression"|bc`
注意上面的反引號(一般位於tab建的上方,感嘆號!的左邊),不是單引號。
例如要計算3.25/3,精確到小數點後4位:
var=`echo "scale=4;3.25/3"|bc`
#var=1.0833
echo $var
再看乙個例子:
a=10.5
b=2.7
c=`echo "scale=5;$a /$b "|bc`
#c=3.88888
echo $c
如果需要計算的浮點表示式比較多,可以放在多行上,格式如下:
下面是乙個實際例子:variable=`bc << eof
options
statements
expressions
eof`
#!/bin/bash
a=1.23432
b=2.45
c=6.0
d=5#注意:
#var=ab+cd,ab和cd只是bc中的變數,不能在bash中使用
var=`bc << eof
scale=4
ab=($a+$b)
cd=($c-$d)
ab+cd
eof`
#var=4.68342
echo $var
bash中的數值運算
第一種,使用 表示式 a 3 b a 2 echo b第二種使用let let c a 4 echo c第三種,使用expr表示式 注意空格不能少 注意空格和反引號 d expr 4 3 echo d第四種,比較常用,就是放在 expression 中,其實這才是bash的推薦的標準處理方法 a 4...
bash的數值運算
在shell中,變數的預設型別是字串型別,而字串型別是不能進行數值運算的,所以shell提供了兩種方式來實現數值運算。1.用declare命令顯式地宣告變數的型別。2.用expr let數值運算工具或著特殊書寫格式來完成shell中的數值運算。一 declare命令介紹 目的 顯式地宣告變數的型別 ...
10 5 1 Bash變數 數值運算與運算子
aa 11 bb 22 cc aa bb echo cc 11 22 root localhost declare 選項 變數名 選項 給變數設定型別屬性 取消變數的型別屬性 i 將變數宣告為整數型 integer x 將變數宣告為環境變數 p 顯示指定變數的被宣告的型別 aa 11 bb 22 d...