ディレクトリから文字列を検索する - ファイル名なしで出力を取得する

ディレクトリから文字列を検索する - ファイル名なしで出力を取得する

パターンに一致する行を表示するために、次のコマンドを実行しています。

./files/ -name "*.txt" -print0 xargs -0 grep "5|20150507" 検索

出力は次のとおりです

./files/N1.942_0000.txt:78787878|13|5|20150507221152 ./files/N1.942_0000.txt:78787878|13|5|20150507221 22121 2 |13| 5 | 20150507222004./files/N1.810_0000.txt:8892716618|13|5|20150507215150./files/N1.442_0001.txt:8648648542 1 .442_0001.txt:8648648648 | 13 | 5 |20150507221638 ./files/N1.442_0001.txt:7406079160|13|5|20150507221941

しかし、以下のようにファイル名なしで出力したいと思います。

86486 48648|13|5|20150507221636
8648648648 |13|5|
20150507221638 7406079160 | 20150507221941



ベストアンサー1

grepコマンドには-rオプションがあります

ディレクトリ内のテキストを再帰的に検索します。

以下の例:

grep -r "5|20150507" ./ | awk -F ':' {'print $2'}

おすすめ記事