当前位置: 首页 > 知识库问答 >
问题:

如何才能递归地grep,但只能在具有特定扩展名的文件中?

容阳焱
2023-03-14
{ grep -r -i CP_Image ~/path1/;
grep -r -i CP_Image ~/path2/;
grep -r -i CP_Image ~/path3/;
grep -r -i CP_Image ~/path4/;
grep -r -i CP_Image ~/path5/; }
| mailx -s GREP email@domain.com

共有1个答案

柯昆杰
2023-03-14

只需使用--include参数,如下所示:

grep -inr --include \*.h --include \*.cpp CP_Image ~/path[12345] | mailx -s GREP email@domain.com

那应该能达到你想要的效果。

从HoldoffHunger的回答中得到以下解释:

-n:文件中的每一行输出前面都有其相对行号

--include\*.cpp:所有*.cpp:C++文件(用\转义,以防文件名中有一个带星号的目录)

./:从当前目录启动。

 类似资料:
  • 这个问题不同于其他grep模式匹配问题,因为我们正在寻找大量的文件扩展名,因此这个问题中的以下内容太长太乏味,无法键入: 当谷歌出于安全原因阻止我的附件上传时,我正试图通过电子邮件发送一个静态网站的备份。他们的支持页面上写着: 无法发送或接收以下文件类型: .艾德。adp。球棒chm。cmd。com。cpl。exe。hta。ins。isp。罐子jse。库。lnk。mde。理学硕士。msp。mst。

  • 问题内容: 我正在尝试查找具有特定扩展名的文件。例如,我要查找所有名为Robert的.pdf和.jpg文件 我知道我可以执行此命令 但是我需要指定扩展名之外的文件本身的名称。我只是想看看是否有一种避免重复写入文件名的方法,谢谢! 问题答案: 我的偏好:

  • 我目前正在尝试制作一个脚本,该脚本将grep输入以查看某些内容是否属于某种文件类型(例如zip),尽管文件类型之前的文本可以是任何内容,因此例如 都属于这一类。我正在尝试使用通配符grep这些,到目前为止,我已经尝试过了。 但是每当我这样做时,它都会发现文件很好,但是如果.zip之后有其他字符,它仍然会显示输出例如或仍然会被grep拾取。话虽如此,我应该怎么做才能防止 grep 在后显示具有其他字

  • 问题内容: 我需要在我的Linux系统(专用的虚拟主机)上找到所有文件。我尝试了以下方法:,但是不起作用。有什么建议吗? 问题答案: 您可以使用以下find命令执行此操作: 进行不区分大小写的搜索。

  • 问题内容: 我正在为某些目录编写一些脚本,但是这些目录包含各种文件类型。 我想只是和现在,但也许其他几个人的未来。 到目前为止,我有: 谁能告诉我我现在如何只添加特定的文件扩展名? 问题答案: 只需使用参数,如下所示: 那应该做你想要的。 从下面的HoldOffHunger答案中获取解释: :命令 :递归地 :忽略大小写 :所有* .cpp:C ++文件(如果文件名中带有星号的目录,请使用\进行转

  • 问题内容: 在我的npm包中,我想模拟流星遵循的模式:源文件(名为)在文件夹中有一个测试文件(名为)。使用命令运行测试。 我正在将用法文档放在“ t”后面。我不想在我的包测试命令中使用。 我知道mocha可以递归执行测试: 摩卡-递归 我知道mocha可以使用标志在特定的子文件夹中执行测试: mocha src-递归 我也了解我可以通过以下方式指定一个glob来过滤文件: 摩卡* .tests.j