将 bash 中的数字输出格式化为精确到小数点后 4 位

将 bash 中的数字输出格式化为精确到小数点后 4 位

我有一个将数字输出到日志文件的命令,我不喜欢数字更改小数位数时的样子,因为它破坏了对齐方式并使所有内容看起来很混乱。如何强制输出每次都具有相同的小数位数?

前任:

531.125
531.4561
531.3518
531.2

应该:

531.1250
531.4561
531.3518
531.2000

谢谢!

答案1

在 bash printf 中可以使用以下%f格式

#!/bin/bash
for a in 531.125 531.4561 531.3518 531.2; do
    printf "%8.4f\n" "$a"
done

执行给出:

531.1250
531.4561
531.3518
531.2000

相关内容