ここから本文です

複数ファイルからawkで文字列検索 複数のテキストからの文字列抽出についてご教...

han********さん

2018/4/2623:38:15

複数ファイルからawkで文字列検索

複数のテキストからの文字列抽出についてご教示下さい。
ファイル「test1.log」「test2.log」にはそれぞれ以下のような情報が含まれています。

aaa 111
bbb 222
ccc 333
ddd 444
eee 555
ddd 666

これらの複数のファイルを以下のように検索すると
$ cat test*|awk '/aaa/{print}/bbb/{print}/ddd/{print}'
aaa 111
bbb 222
ddd 444
ddd 666
aaa 111
bbb 222
ddd 444
ddd 666

のようになると思いますが
以下のようにaaaとbbbは全部
dddは検索結果の1つ目のみを抽出することはawkコマンド1行で可能でしょうか?
aaa 111
bbb 222
ddd 444
aaa 111
bbb 222
ddd 444

aaa,bbb,dddの順番で各ファイルを順番に抽出が出来ればawkコマンド出なくても大丈夫です。

閲覧数:
59
回答数:
1

違反報告

ベストアンサーに選ばれた回答

プロフィール画像

カテゴリマスター

cd6********さん

2018/4/2701:50:05

質問のコマンドラインだと順番ではないと思いますが。
そのままで良いなら
awk '/aaa/;/bbb/;FNR==1{d=1};/ddd/&&d{print;d=0}' test*

質問した人からのコメント

2018/4/27 22:01:04

対象のログは1行目にaaa、2行目にbbb、10行目以降のランダムな行数でdddというフォーマットでしたので、教えていただいたコマンドで想定通りの結果になりました。

非常に助かりました。
ありがとうございます!

この質問につけられたタグ

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo!知恵袋カテゴリ

一覧を見る

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる