word1
たとえば、2つの単語と(たとえば)を含むディレクトリツリーですべてのテキストファイルを検索したいとしますword2
。 2つの単語が連続して現れる場合にのみ見つけることができるので、grep
それはできません。word1 word2
以下を含むすべてのファイルを検索したいと思います。両方これら2つの単語が必ずしも連続しているわけではありません。
理想的には、検索時にファイル名とファイルにその用語が見つかったコンテキストを印刷する必要があります。これが役に立ちます。 GUIは病気ではありません。
どうすればいいですか?
ベストアンサー1
find
ファイルが一致すると見なされるには、すべてのテストに合格する必要がある関数を使用します。grep
条件に一致するように2つのコマンドを一緒にリンクします。
find . -type f -exec grep -q word_one {} \; -exec grep -l word_two {} \;
シェル特殊文字や正規表現特殊文字がある場合は、単語を引用(または使用)するなど、必要に応じてgrepのフラグを調整できますgrep -F
。