想要在文件夹的所有子目录中查找字符串

想要在文件夹的所有子目录中查找字符串

假设我在一个文件夹中

/data/

文件夹数据包含 10 个其他文件夹

/data/temp1
/data/temp2
/data/temp3
and so on  

所有这些都包含 .gz 文件,即 temp1、temp2、temp3 直到 temp10 都包含 .gz 文件,我希望能够找到某个字符串,假设错误:在所有 10 个目录中的所有文件中。

是否有命令可以帮助我做到这一点?

答案1

基本的 find 命令应该执行以下操作:

# find /data -name "*.gz" -exec zgrep "ERROR" {} \;

有几种替代方法(可能更有效)可以对其进行格式化,例如使用xargs,但这可以完成工作,至少就您的问题而言。

相关内容