string - Bash - 使用通配符删除字符后的所有文本
问题描述
我看到了这个 SO 答案,显示了如何在 Bash 中删除字符串中的字符后的所有文本。有了这些信息,我可以做这样的事情来舍入一个数字:
NUMBER=10.12345
NUMBER=${NUMBER%.*} # 10
但是,我想保留小数点后两位数。我怎样才能10.12345
成为10.12
?我不需要适当地圆整,只需修剪。运行时可能带有通配符${NUMBER%.*}
?
解决方案
你可以用printf
. 试试printf "%.2f" "${NUMBER}"
。您也可以将值保存到变量中:printf -v myvar "%.2f" "${NUMBER}"
.
推荐阅读
- r - 在 R 中为对过去几年敏感的面板数据创建虚拟变量
- mysql - MySQL 说:文档 #2054 - 服务器请求客户端未知的身份验证方法
- qt - QtQuick StackView 加载问题
- oracle-sqldeveloper - SQL Developer 未使用我的机器的主机名进行连接
- javascript - 如何从 ip 地址 javascript 等格式中获取最后一位数字?
- android - 自定义相机变焦崩溃(重启)三星手机
- java - 如何在 JAVA 中使用 TypeSafe 从配置中解析地图?
- python - 对于任何索引,返回前两个索引的最小值
- flutter - Flutter:列对齐项目以具有相同的宽度
- css - 使用样式组件时删除了父样式