Bash和减去浮点数

时间:2011-09-09 14:07:50

标签: bash

我在Bash中有这样的代码:

read a
read b
c=96.0
d=100.0
echo "scale=2;($b*$c - $a*$d)/$a" |bc 

并打印此表达式的结果:

  

(B * 96-A * 100)/ A

但是当结果在-1和0之间时 它给出了这样的东西:-.99

对于较小的值,它可以正确打印结果。 所以,我的问题是,如何强制程序在打印时输入0

  

0.123123(...)

?不仅

  

0.123123(...)

1 个答案:

答案 0 :(得分:2)

使用printf:

$ printf "%0.2f" "$(echo 'scale=2; 1.9/10.0' | bc)"
0.19

printf(也是)bash builtin