当我跑步时:
fval=1.40 ; echo "scale=0 ; 1000 * ${fval}" | bc
我得到的结果:
1400.00
对于我指定的值scale
,我期望没有小数位。
还有其他人有这个问题吗?
版本:bc
1.07.1
Ubuntu 22.04.4 LTS
(将 Ubuntu MATE 从 20.04 LTS 升级到 22.04.04 LTS,不是全新安装)
当我跑步时:
fval=1.40 ; echo "scale=0 ; 1000 * ${fval}" | bc
我得到的结果:
1400.00
对于我指定的值scale
,我期望没有小数位。
还有其他人有这个问题吗?
版本:bc
1.07.1
Ubuntu 22.04.4 LTS
(将 Ubuntu MATE 从 20.04 LTS 升级到 22.04.04 LTS,不是全新安装)
不是错误。来自
man bc
:接下来是:
因此,没有明确说明“结果的比例是变量比例
expr / expr
的值”(与描述时不同)这一事实,已经意味着expr * expr
预计不会遵守scale
。此外,对于
expr * expr
“结果是所涉及表达式的最大尺度”的情况,可以通过经验证实:为了获得想要的行为,您可以添加一个无意义的除法(请注意,由于
scale
默认值为 0,您不妨省略它):