shell中的浮点数运算
法一:
#!/bash
for((i=1;i<=10;i++))
do
echo $i
j=$(echo "$i*0.2-2.5"|bc)
echo $j
done
法二:
#!/bash
for((i=1;i<=10;i++))
do
echo $i
j=`bc <<< "0.2*(${i}-1)-2.5"`
echo $j
done
shell 包含三个命令:bc、expr、let可用于数值计算。
输入:整数,let和expr都无法进行浮点运算,但是bc和awk可以。
输出:bc、expr可直接显示计算结果;let则丢弃计算结果,可通过传递结果到变量,取变量值获得计算结果。
http://blog.csdn.net/praylucky/article/details/6252963
法三:
$ echo "scale=3; 1/13" | bc
.076
$ echo "1 13"
| awk '{printf("%0.3f\n",$1/$2)}'
0.077
scale用来控制小数点后面保留的位数