Ksh
在 awk 中執行計算時舍入第二位小數
這是一個簡單的例子:
echo "36974820" | awk '{print "("$1 " KB)" " (" $1/1024 " MB)" " (" $1/1024/1024 " GB)\n"}'
輸出:
(36974820 KB) (36108.2 MB) (35.2619 GB)
我想要的如下:
(36974820 KB) (36108.2 MB) (35.26 GB)
我知道可以單獨使用以下內容:
echo "5.5434" | awk '{printf "%.2f\n", $1}'
輸出是:
5.54
我想將上面的內容與我的 awk 結合起來執行計算以四捨五入到小數點後第二位。
您可以
printf
直接使用而不是awk
(至少是 GNU awk):user@host $ echo "36974820" | awk '{printf("(%d kB) (%.2f MB) (%.2f GB)\n", $1, $1/1024, $1/1024/1024)}' (36974820 kB) (36108.22 MB) (35.26 GB)