数千の列で構成されるファイルから特定の列を掛けます。

数千の列で構成されるファイルから特定の列を掛けます。

ファイルは次のとおりです

-17.3644       0.00000000     0.00000000 ....
-17.2703       0.00000000     0.00000000 ....
-17.1761       0.00000000     0.00000000 ....
-16.5173       0.00000000     0.00000000 ....
-16.4232       0.00000000     0.00000000 ....

予想される出力は次のようになります。

-173.644       0.00000000     0.00000000 ....
-172.703       0.00000000     0.00000000 ....
-171.761       0.00000000     0.00000000 ....
-165.173       0.00000000     0.00000000 ....
-164.232       0.00000000     0.00000000 ....

だから最初の列に10を掛け、残りの1000列を維持したいと思います。awk '{print $1*10}' infile > outfile最初の列だけが印刷される場合、他の列はどのように維持されますか?

ベストアンサー1

努力する

awk '{$1=$1*10 ; print }'

これにより、最初のパラメータが変更され、行全体が印刷されます。

3桁の形式を維持するには、次を使用します。

awk '{$1=sprintf("%.3f",$1*10);print;}' 

おすすめ記事