Files

如何使用 ag 在具有特定副檔名的文件中查找文本?

  • September 16, 2019

我正在使用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

但得到了你在上面看到的錯誤。

根據手冊,您可以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

從 開始ag version 2.2.0,您可以執行ag --list-file-types,它將列出支持的、開箱即用的類型。您只能ag "ftp" --java針對不同的 Java 文件執行和搜尋。

引用自:https://unix.stackexchange.com/questions/343570