2

次の形式のデータがあります。

bruce   434355/512000 (84.8349609375%)
oliver   217542/512000 (42.488671875%)
kareem   236778/563200 (42.0415482954545%)

2 番目の列のデータは KB 単位で、最初の部分 (/ の前) を抽出して、次のように表示します。

 bruce    424.17MB (84.8349609375%)
 oliver   212.44MB (42.488671875%)
 kareem   231.24MB (42.0415482954545%)

sed または awk でそれを行う方法はありますか?

別の方法として、awk を使用して 2 番目の列を抽出し、それを別のファイルに書き込み、while ループ内で各ファイルから 1 行を表示しました。

4

2 に答える 2

4
awk '$2=$2/1024"MB"' file

小数点以下 2 桁だけを保持する場合は、次のようにします。

awk '{printf "%s %.2fMB %s\n", $1, $2/1024, $3 }' file
于 2013-08-15T12:51:49.053 に答える