文字列を含むフィルター処理されたファイルのリスト

文字列を含むフィルター処理されたファイルのリスト

文字列を含むファイルを探しています。私のコマンド:

grep -rwl '/path/' -e "string"

別の文字列を含むパスに結果を制限したいです。私はこれを行うことができます:

grep -rwl '/path/' -e "string" | grep 'path_string'

可能であれば、「path_string」で始まるパスだけを見て、実行を最適化したいと思います。どうすればいいですか?

ベストアンサー1

findたとえば、次のものを使用できます。-path

find /path -path '*path_string*' -type f -exec grep -qw 'string' {} \; -print

これは1シェルパターンと一致するファイル名を検索し/path、そのファイルでのみ実行され、成功するとその名前を印刷します。*path_string*grep


1:次から始まるファイル名全体にパターンマッチングが適用されます。/path/

おすすめ記事