很容易,我正在编写一个脚本,需要浮点数后有2位数的值。 试图使用bc我不明白如何使用“规模”,即
A=12 ; bc <<< $(($A/5))
这是正确的,但添加“规模”导致错误:
A=12 ; bc <<< 'scale=2;$(($A/5))' (standard_in) 1: illegal character: $ (standard_in) 1: illegal character: $
用双引号replace单引号; 因为在你的等式中单引号$A没有被扩大,而被认为是字面上的$A不是12
A=12 ; bc <<< "scale=2;$(($A/5))" 2
另外,在$(())variables内部不需要被指定为$A ,只需要A就可以,例如
A=12 ; bc <<< "scale=2;$((A/5))" 2
接下来,在执行$(())的时候调用了subshell,这不是你想要做的,因为bc什么都不做。 尝试这个
A=12 ; bc <<< "scale=2; $A/5" 2.40
试试:
A=12;echo 'scale=2;'"$A / 5"|bc -l