大きなテキストファイルから列を抽出する

大きなテキストファイルから列を抽出する
MaxVal  MinVal  AvgVal
3.8959  0.795   2.249071429
3.8416  0.7761  2.280848
3.896   0.7949  2.221309804
3.8727  0.7746  2.252477966
3.8953  0.7957  2.225252

「AvgVal」という列を抽出したいとしましょう。sed/コマンドをどのように使用してgrepこれを実行できますか?実際のファイルには1000を超える列があります。

ベストアンサー1

perl -pale '
   $. == 1 and ($idx) = grep { $F[$_] eq "AvgVal" } 0..$#F;
   $_ = $F[$idx];
' yourfile

まず、レコード1のフィールドを繰り返し印刷する列番号をロックし、それを使用してデータを印刷します。

おすすめ記事