grep 递归查找给定目录中的文本
例子
使用GNUgrep
grep -r 'pattern'
还要列出匹配-n项的行号,请使用选项
grep -rn 'pattern'
仅搜索具有特定glob模式的文件
grep --include='*.txt' -r 'pattern'
排除文件模式或目录
grep -R --exclude=*.log 'pattern'grep -R --exclude={*.log,*.class} 'pattern' grep -R --exclude-dir=tmp 'pattern' grep -R --exclude-dir={tmp,lib} 'pattern'
注释和其他有用的选项
该-R选项下面的所有符号链接,不像-r跟随符号链接,只有当他们是在命令行上
-l只列出匹配的文件
-h取消文件名前缀
--color=auto突出显示匹配的模式
-m
递归搜索的POSIX解决方法
find-type f -exec grep -l 'pattern' {} +
类似的选项-n,-l等根据需要可以使用
如果{}+不支持,请{}\;改用
有关命令的更多帮助,请参阅查找文档,find例如如何包含/排除文件类型、目录等