linux – bc:使用带有bash变量的“scale”

linux – bc:使用带有bash变量的“scale”
很容易,我正在编写一个脚本,在浮点后需要一些2位数的值.试图使用bc我不明白如何使用“规模”,即
A=12 ; bc <<< $(($A/5))

这是正确的,但添加“scale”会导致错误:

A=12 ; bc <<< 'scale=2;$(($A/5))'(standard_in) 1: illegal character: $(standard_in) 1: illegal character: $

用双引号替换单引号;因为你的等式中的单引号$A不会被扩展,而是被视为字面上的A而不是12
A=12 ; bc <<< "scale=2;$(($A/5))"2

另外,$(())变量内部不需要指定为$A,只需要A,例如

A=12 ; bc <<< "scale=2;$((A/5))"2

接下来,在执行$(())时,您调用subshel​​l,这不是您想要做的,因为bc不执行任何操作.试试这个

A=12 ; bc <<< "scale=2; $A/5"2.40

推荐阅读