grep搜索子目录

时间:2015-03-20 17:19:50

标签: grep find xargs text-search

我正在尝试在所有文件中的目录中搜索文本。它也有望访问子文件夹。有文件夹&名称中包含空格字符的文件。我正在使用以下命令进行搜索。

find . -type f | xargs grep -rls 'my text'

这不会访问带有空格字符的文件夹和文件。关于命令要改变什么的任何建议?

2 个答案:

答案 0 :(得分:1)

我应该处理具有空格的文件,但我认为(尽管不是新行),但您可以使用find -print0xargs -0更安全。

据说当前对-r的{​​{1}}参数的使用是没有意义的,因为它只会被赋予目录以进行操作。此外,您在此使用grep毫无意义,因为find直接在此处执行您想要的操作。

只需使用grep -r

答案 1 :(得分:0)

我亲自动手的grep版本支持-r切换,递归。

只需将它放在顶级目录中,grep就可以完成它的工作:

grep -r myregex /home/marcus/bunchoffilesindirectories