awkを使用して列を乗算する

awkを使用して列を乗算する

使用方法は、列に整数(例:3)を掛け、古い値を新しい値に置き換えることawkです。

入力する:

データ 9390.900391 10573.089844 80.000000 200.000000 2.700000
データ 17762.810547 18536.189453 85.000000 200.000000 2.700000

予想出力:(最後の列に3を掛けた後)

データ 9390.900391 10573.089844 80.000000 200.000000 8.100000
データ 17762.810547 18536.189453 85.000000 200.000000 8.100000

答え1

努力する:

$ awk 'NF{$NF = sprintf("%.6f", $NF*3)}1' file
Data 9390.900391 10573.089844 80.000000 200.000000 8.100000
Data 17762.810547 18536.189453 85.000000 200.000000 8.100000

$NF変更したいフィールドの位置に変更します$nn

答え2

forループを使用してください。

awk '/^$/{next}; {for(i=1;i<=5;i++){printf "%s\t", $i}; printf "%.6f\n", $6*3}' file 
Data    9390.900391     10573.089844    80.000000       200.000000      8.100000
Data    17762.810547    18536.189453    85.000000       200.000000      8.100000

関連情報