第一行返回数十个发现。第二行什么都不返回。
sudo find /var/www/ . -type 'f' -name index.php | grep "php"
sudo find /var/www/ . -type 'f' -name index.php | grep "require"
有些名为index.php
的文件包含两个文本字符串。为什么第二行似乎不起作用?
答案 0 :(得分:1)
你想在管道到grep之前调用xargs。你所拥有的是grep搜索find的结果,而不是找到的文件的内容。
sudo find /var/www/ . -type 'f' -name index.php | xargs grep "php"
如果您进行大量此类搜索,可能需要查看ack。例如,要在/ var / www中搜索“require”的所有PHP文件,您可以使用:
ack --php require /var/www