bash shell环境中,可以使用let 、(()) 、[]执行基本的算术运算,而在进行高级操作时,也可以用expr、bc两个工具
(1)let命令,当使用let的时候,变量前面不需要加$
let result=no1+no2
echo ${result}
自加自减操作
let no1++
let no2--
简写形式
let no1+=6
(2)[]使用方法与let相似
result=$[no1+no2]
或者
result=$[$no1+5]
(3)使用(()),变量名之前需要加$
result=$((no1+no2))
(4)expr同样运用于基础算术操作,注意空格
result=`expr 3 + 4 `
#注意空格 如果写为`expr 3+4`,在echo result时会输出3+4
result=$(expr $no1 + 5) #同样注意空格
以上方法只适用于整数运算,不支持浮点数
(1)bc支持浮点数等精确运算
echo "4 * 0.56" | bc 输出 2.24
result=`echo "$no1 * 1.5" | bc`
设置小数精度 scale=2将小数的位数个数设置为2
echo "scale=2;3/8"|bc 输出0.37
进制转换obase
no=3
echo "obase=2;$no" | bc 输出11
计算平方以及平方根
echo "sqrt(100)" |bc
echo "10^10" | bc