txtファイルで検索し、新しいtxtファイルとして印刷します。

txtファイルで検索し、新しいtxtファイルとして印刷します。

次のデータを含む1000行を超えるtxtファイルがあります。

alpha
hmld ahge 573
otndgd fhj 29
fidnt ank 1962

beta
jdkrs 2
adny 14
urmekhjf 6893
...

次の結果を含む(dn)などの内容を含む行を検索して印刷するには(新しいtxtファイルから)どうすればよいですか?

fidnt ank 1962 alpha
adny 14 beta

geditを使って検索しましたが、欠陥があります。私のシステム:Ubuntu

ありがとう

ベストアンサー1

次のことができます。

<input-file.txt awk '
     !NF {FNR=0; next}
  FNR==1 {header=$0; next}
    /dn/ {print $0, header}' > result.txt

F空の行が見つかるたびに、各行のレコード番号をリセットし、その行の後のR最初の行(1の場合)が考慮されます。NFNRヘッダーその後、レコードを印刷します。ヘッダーdn入力のどこでも見つけることができます。

おすすめ記事