我将使用什么命令从根目录开始查找 Girl 目录下所有包含 ASCII 文本“shirt”的文件?
答案1
find . -print0 | xargs -0 grep -FH text
-exec
比grep -r
我的机器上的运行速度更快。
答案2
grep
是用于搜索文件内部模式的标准工具。它有一个递归搜索的选项,这意味着如果它找到一个目录,它就会进入其中并搜索其中的所有内容。
该命令将简单地是grep -r shirt /path/to/girl/
我还想添加两个选项来跳过我知道我不感兴趣的文件:--binary-files=without-match
和--devices=skip
。
答案3
正如所述肖恩,使用grep -r
可能足以满足您的需求。
find
否则,和的组合grep
可以达到目的:
find . -exec grep -H text '{}' ';'
这允许使用特定的查找谓词来细化搜索。 (并且-H
有选项可以将文件名与匹配的内容一起打印。)