如何使用ag在具有某些扩展名的文件中查找文本?


23

我正在使用agThe Silver Searcher)版本0.31.0。我可以使用以下命令轻松地在一堆文件中查找字符串:

localhost:workspace davea$ ag 'ftp' .

但是,如果我只想扫描带有某些扩展名的文件怎么办?我尝试了这个:

localhost:workspace davea$ ag 'ftp' .java
ERR: Error stat()ing: .java
ERR: Error opening directory .java: No such file or directory

但出现了您在上面看到的错误。


给了一个旋转但得到了“ ERR:错误stat()ing:* .java”和“ ERR:错误打开目录* .java:没有这样的文件或目录”错误
Dave

Answers:


28

每本手册中,你可以使用ag-G

   -G --file-search-regex PATTERN
          Only search files whose names match PATTERN.

例如

ag -G '\.java$' 'ftp' .

根据同一本手册

   It is possible to restrict the types of files searched [...]
   For a list of supported types, run ag --list-file-types.

所以你也可以跑

ag --java 'ftp' .

尽管这样会将搜索限制为以.java或结尾的文件名.properties


2
抱歉,正在删除。
彼得·克劳斯

`ag -G'\。((hbs | html)$'关键字)如果要搜索多个文件扩展名
Alan Dong

0

从开始ag version 2.2.0,您可以运行ag --list-file-types,它将列出受支持的现成类型。您只能ag "ftp" --java针对各种Java文件运行和搜索。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.