パス名に特定の順序なしで複数の単語(word1
、)を含むすべてのファイルを検索したいと思います。word2
一致するファイルの例は次のとおりです。
word1bar/fooword2/myfile
fooword2/word1bar/myfile
fooword2/bar/word1myfile
どのコマンドでタスクを解決できますか?
次のコマンドが機能するようです。
find . -regex regexpattern
ありがとうございます。
私の解決locate
策検索とgrepパイプラインを使用したパス名によるファイル検索が改善されました。
答え1
これは単一パターン(正規表現またはシェル)を使用することは困難ですが、複数のfind
条件を使用できるため、次のことができます。
find . -type f -path "*word1*" -path "*word2*" ...
正規表現では、単語のさまざまな順列をすべて指定する必要があります.*word1.*word2.*|.*word2.*word1.*
(例:EREまたはPerl REのみ)。複数の単語を見つけるために、問題はすぐに解決されます。