アップロード/ダウンロードを高速化する本当に素晴らしいコードを見つけました。
awk '{ if (l1) {
print "↓"($2-l1)/1024"kB/s ","↑"($10-l2)/1024"kB/s"
} else {
l1=$2; l2=$10;
}
}' <(grep wlan0 /proc/net/dev) <(sleep 1; grep wlan0 /proc/net/dev)
ただし、小数点以下4桁まで返されます。むしろ小数点がない方が良いでしょう。以前は、次のように数字を丸めることができました。紀元前または印刷機能print
ところでこれだけ使えるようですawk
。この問題に対する良い解決策はありますか?
答え1
#!/bin/awk -f
{
if (l1) {
printf("↓ %.2f kB/s ↑ %.2f kB/s\n" \
, ($2 - l1) / 1024, ($10 - l2) / 1024)
} else {
l1 = $2;
l2 = $10;
}
}
%.2f
小数点以下 2 桁の浮動小数点数です。整数部分のみを表示するには、%.0f
または(整数)を使用してください。%i
答え2
%.0f
印刷明細に追加してください。
はい
echo "5.54" | awk '{printf "%.0f\n", $1}'
6の出力を提供します。
echo "5" | awk '{printf "%.0f\n", $1}'
出力5を提供します。