第一种,使用((表达式))
root@root:~# a=3
root@root:~# ((b=a+3))
root@root:~# echo $b
6
第二种使用let
root@root:~# let "c=$a+4"
root@root:~# echo $c
7
使用expr表达式,注意空格和反引号
root@root:~# d=`expr 4 + 3`
root@root:~# echo $d
7
放在$[ expression]中,这是bash的推荐的标准处理方法
root@root:~# a=4
root@root:~# b=$[$a-9]
root@root:~# echo $b
-5
在C风格的for循环中,则可以如下使用
root@root:~# for((a=1,b=10;a<=10;a++,b--))
do
((c=a*b))
echo "$c
"
done
10
18
24
28
30
30
28
24
18
10
浮点数运算,借助bc(bash计算器)运算
基本格式: variable=`echo "option;expression" | bc`
root@root:~# a=`echo "scale=4;3.25/3" | bc`
root@root:~# echo $a
1.0833
root@root:~# a=6.6
root@root:~# b=3.5
root@root:~# c=`echo "scale=5;$a/$b"|bc`
root@root:~# echo $c
1.88571
如果浮点表达是有多行,则可以放在多行计算
基本格式:
variable=`bc << EOF
options
statements
expressions
EOF
`
演示:
root@root:~# a=1.2
root@root:~# b=2.4
root@root:~# c=3.5
root@root:~# d=2
root@root:~# e=`bc << EOF
scale=4
ab=($a+$b)
cd=($c-$d)
ab+cd
EOF
`
root@root:~# echo $e
5.1
Linux bash中的运算
猜你喜欢
转载自www.cnblogs.com/xhai/p/11369936.html
今日推荐
周排行