如何使用 bc 将浮点数舍入到最接近的十分之一。我有一个名为 loadMin 的变量
loadMin=$(uptime | cut -d" " -f14 | cut -c 1-4)
它返回每分钟的负载平均值,小数点后两位。即 0.01 0.02 0.09。我需要将数字四舍五入到最接近的十分之一。例如 0.01 四舍五入为 0.0 或 1.09 四舍五入为 1.1
任何帮助表示赞赏。
为什么使用bc
?printf
很乐意这样做:
printf "%.1f" "$loadMin"
如果您需要将结果放入变量中:
printf -v variable "%.1f" "$loadMin"
您可以一次性完成awk
:
loadMin=$(uptime | awk '{printf "%0.1f", $14}')
解释:
cut
,使用awk
代替使这些更容易awk
默认情况下分隔空格和制表符,并将每行分隔为字段。'{printf "%0.1f", $14}'
:将第 14 个字段打印为浮点数,四舍五入到最接近的小数点后 1 位。