首页 > 解决方案 > Bash - 使用通配符删除字符后的所有文本

问题描述

我看到了这个 SO 答案,显示了如何在 Bash 中删除字符串中的字符后的所有文本。有了这些信息,我可以做这样的事情来舍入一个数字:

NUMBER=10.12345
NUMBER=${NUMBER%.*} # 10

但是,我想保留小数点后两位数。我怎样才能10.12345成为10.12?我不需要适当地圆整,只需修剪。运行时可能带有通配符${NUMBER%.*}

标签: stringbashtrim

解决方案


你可以用printf. 试试printf "%.2f" "${NUMBER}"。您也可以将值保存到变量中:printf -v myvar "%.2f" "${NUMBER}".


推荐阅读