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

Linux上特定文件类型的递归grep

东方镜
2023-03-14

我们能否在某些文件夹中仅在特定文件(html文件)中递归地搜索术语(例如“onblur”)?

grep -Rin "onblur" *.html

这不会返回任何结果。但是

grep -Rin "onblur" .

返回所有可用文件的“onblur”搜索结果,如文本(“.txt”)。mako。金贾等。

共有3个答案

卫沈义
2023-03-14

你可能也喜欢ag'银色搜索者'-

ag --html onblur

它按regexp进行搜索,默认情况下在当前目录中是递归的,并且具有预定义的扩展集来搜索(在本例中为html映射)。htm。html。shtml。xhtml。默认情况下,也会忽略二进制文件、打印文件名、行号和为输出着色。

一些选择-

-Q --literal
          Do not parse PATTERN as a regular expression. Try to match it literally.
-S --smart-case
          Match case-sensitively if there are any uppercase letters in PATTERN, 
          case-insensitively otherwise. Enabled by default.
-t --all-text
          Search all text files. This doesn't include hidden files.
   --hidden
          Search hidden files. This option obeys ignored files.

要查看支持的文件类型列表,请运行ag--list file type

它似乎唯一缺少的是能够指定带有扩展名的文件类型,在这种情况下,您需要使用--include依赖于grep。

闻人思聪
2023-03-14
grep -r --include "*.html"  onblur .

来自:我如何递归地grep?

齐嘉庆
2023-03-14

考虑一下这个答案和那个答案。

这也可以帮助您:递归地grep某些文件类型| commandlinefu。通用域名格式。

命令是:

grep -r --include="*.[ch]" pattern .

在你的情况下,它是:

grep -r --include="*.html" "onblur" .
 类似资料:
  • 问题内容: 我们可以仅在特定文件(html文件)中的某些文件夹中递归搜索术语(例如“ onblur”)吗? 这什么也不会返回。但, 从所有可用文件中返回搜索结果,例如text(“。txt”)、. mako,.jinja等。 问题答案: 这也可能对您有帮助:递归grep某些文件类型| commandlinefu.com 。 该命令是: 在您的情况下,它是:

  • 问题内容: 我需要从目录及其所有子目录复制所有文件。我如何在UNIX / Linux终端中做到这一点?命令不起作用。 问题答案: 对于本地文件复制以及计算机之间的复制很有用。这将做您想要的: 的完整目录结构。被复制到/ destination_dir,但是仅复制.jar文件。-a确保文件的所有权限和时间均不变。-m将省略空目录。-v用于详细输出。 对于空运行,请添加-n,它将告诉您它将执行的操作,

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

  • 问题内容: 如何递归计算Linux目录中的文件? 我找到了这个: 但是,当我运行它时,它返回以下错误。 查找:路径必须在表达式之前:¦ 问题答案: 这应该工作: 说明: 仅包含文件。 ( 而不是)将命令的标准输出重定向到命令的标准输入。 (字数计数的缩写)在其输入(docs)上计算换行符,单词和字节。 仅计算换行符。 笔记: 更换用在当前文件夹要执行的命令。 您也可以删除,以在计数中包含目录(和符

  • 我有这样一个功能组件:

  • 问题内容: 我向我添加了一些简单的命令来帮助完成括号和括号,但我只希望它们适用于php文件。 如何在编辑.php文件时将这些命令设置为活动状态? 问题答案: 用途: