2013-01-16 95 views
1

第一行返回幾十個發現。第二行不返回任何內容。找到與grep不返回結果

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

有一些文件叫index.php,它們包含兩個文本字符串。爲什麼第二行似乎不起作用?

回答

1

您希望在管道連接到grep之前調用xargs。你有什麼是grep搜索查找的結果,而不是找到的文件的內容。

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

如果你做了很多像這樣的搜索,你可能想看看ack。例如,要在/ var/www中搜索所有PHP文件中的「require」,您可以使用:

ack --php require /var/www