awkまたはgrep? - キーワードとその後の列印刷

awkまたはgrep? - キーワードとその後の列印刷

ベンチマークをしましたが、出力は次の形式の複数の結果を含む単一のファイルです。

[blaaa]
1st run

T/V   N  NB  P  Q   Time
==========================
2     3   4  1  2   1.02
[blaaaa...]
2nd run
T/V   N  NB  P  Q   Time
==========================
4     42 4  1  2    1.22

私はちょうど私がした様々な実行の実行時間を取得したいと思います。それでは、「Time」をgrepして次の列を印刷することは可能ですか?それとも、印刷して書くこともできます。

1.02
1.22

上記の例では?私はblaa部分ではなく3つの結果列のみを印刷することを好みます:D

ベストアンサー1

Time常に6番目のフィールドにあるとします。

$ awk '$6 == "Time" {t = NR} t && NR == t+2 {print $6}' file
1.02
1.22

getlineまたは、-fast'n'dirtyを2回使用できます。

awk '$6 == "Time" {getline; getline; print $6}' file

getline(戻り値を確認しないので「ダーティ」です)。

おすすめ記事