特定の文字列パターンを含むすべてのファイルを見つける必要がありました。最初に思いついた解決策は、探すパイプでxargs grep:
find . -iname '*.py' | xargs grep -e 'YOUR_PATTERN'
しかし、複数行にまたがるパターンを見つける必要がある場合、標準の grep では複数行のパターンを見つけることができないため、行き詰まってしまいます。
ベストアンサー1
以下は使用例ですGNUgrep
:
grep -Pzo '_name.*\n.*_description'
-z
/--null-data
入力を、改行ではなくゼロバイト (ASCII NUL 文字) で終了する行のセットとして扱います。
これはファイル全体を1つの大きな行として扱う効果があります。-z
説明を参照してください。grepのマニュアルそしてまたgrep のマニュアル使用方法ページのよくある質問 14