web-dev-qa-db-ja.com

すべてのディレクトリでパターンをgrepまたは検索する

アカウント番号を持っています1234-5678、私はそれをディレクトリのすべてのファイルで見つけようとしています。次のコマンドを使用しましたが、結果が見つかりませんでした。

grep "1234-5678" */

ディレクトリのすべてのファイルでそれを見つける方法を誰かが私に手伝ってください。

2
Aravind

移植可能/標準的に:

find . -type f -exec grep 1234-5678 /dev/null {} +

一部のgrep実装には-rまたは-Rオプションでファイルを再帰的に検索します。ただし、動作は実装によって異なります。

例えば grepはAIX 6.1にあります なので、おそらく -Rオプション1

上記のfindアプローチとは逆に、fifosやデバイスファイルなどの非標準ファイルを検索する場合があります(または、現在、AIXシステムにアクセスできない場合があります)。

1 これらの-r/-Rオプションのサポートは、IBMのオンラインドキュメントによると、AIX 5.3で追加されました。また、-r/-Rの意味はGNU grep(-rはディレクトリへのシンボリックリンクをたどりますが、-Rはそれとは逆ですが、 GNU grep)

3

grep "1234-5678" * -rまたはgrep "1234-5678" * -Rシンボリックリンクをたどる場合。

2
Milind Dumbare