我看到了这个SO答案,它显示了如何删除Bash中字符串中某个字符之后的所有文本。有了这些信息,我可以执行以下操作来舍入一个数字:
NUMBER=10.12345
NUMBER=${NUMBER%.*} # 10
Run Code Online (Sandbox Code Playgroud)
但是,我想保留小数点后两位。我怎么能10.12345成为10.12?我不需要适当舍入,只需修剪即可。也许在运行时带有通配符${NUMBER%.*}?
您可以使用来环绕浮动printf。尝试printf "%.2f" "${NUMBER}"。您也可以将值保存到变量中:printf -v myvar "%.2f" "${NUMBER}"。