1

最初の行は数十の検索結果を返します。2行目は何も返しません。

sudo find /var/www/ . -type 'f' -name index.php | grep "php"           
sudo find /var/www/ . -type 'f' -name index.php | grep "require" 

index.php両方のテキスト文字列を含むと呼ばれるファイルがあります。2行目が機能しないのはなぜですか?

4

1 に答える 1

1

grepにパイプする前にxargsを呼び出したいと思います。あなたが持っているのは、findが見つけたファイルの内容ではなく、findの結果をgrepで検索することです。

sudo find /var/www/ . -type 'f' -name index.php | xargs grep "php"

このように検索をたくさん行う場合は、ackを確認することをお勧めします。たとえば、/ var / www内のすべてのPHPファイルで「require」を検索するには、次を使用します。

ack --php require /var/www
于 2013-01-16T22:30:45.857 に答える