如何grep一个字符串或文本在一个目录及其所有子目录的文件在LINUX ??
当前回答
grep -r -e string directory
-r是递归;-e是可选的,但它的参数指定要搜索的正则表达式。有趣的是,POSIX grep不需要支持-r(或-r),但我几乎可以肯定System V grep支持,所以实际上它们(几乎)都支持。一些grep版本支持-R以及(或者可以想象的是不支持)-R;AFAICT,意思是一样的。
其他回答
grep -r -e string directory
-r是递归;-e是可选的,但它的参数指定要搜索的正则表达式。有趣的是,POSIX grep不需要支持-r(或-r),但我几乎可以肯定System V grep支持,所以实际上它们(几乎)都支持。一些grep版本支持-R以及(或者可以想象的是不支持)-R;AFAICT,意思是一样的。
如果您的grep支持-R,请执行:
grep -R 'string' dir/
如果不是,那么使用find:
find dir/ -type f -exec grep -H 'string' {} +
推荐文章
- fork(), vfork(), exec()和clone()的区别
- 在tmux中保持窗口名称固定
- 如何生成一个核心转储在Linux上的分段错误?
- 在Python中如何在Linux和Windows中使用“/”(目录分隔符)?
- 使用sh shell比较字符串
- 只列出UNIX中的目录
- 如何在Apache服务器上自动将HTTP重定向到HTTPS ?
- 如何限制从grep返回的结果的数量?
- 将值从管道读入shell变量
- 如何管道列表的文件返回的找到命令到猫查看所有文件
- 以相对于当前目录的路径递归地在Linux CLI中列出文件
- 如何使用xargs复制名称中有空格和引号的文件?
- 在makefile中抑制命令调用的回声?
- 在套接字编程中AF_INET和PF_INET的区别是什么?
- Shell脚本for循环语法