1

假设我在一个目录中有两个文件:

.test
test.txt

如何将ag搜索限制为仅以 a 开头的文件.

我尝试了许多模式,但没有一个奏效。

4

1 回答 1

2

如何将我的 ag 搜索限制为仅以 . 开头的文件?

像这样:

ag -u -G ^\..*$ PATTERN

在您的示例中,该文件.test是隐藏的,因此该选项-u会派上用场。此选项可能是您在搜索中遗漏的。

让我解释一下正则表达式^\..*$

  • ^表示:字符串的开头
  • \.意思是:一个点字符
  • .*表示:任何字符( .)任意次数( *)
  • $是可选的;它标记要匹配的字符串的结尾

注意:我为 ag 打开了一个错误跟踪器.,因为我发现搜索不仅限于名称以该正则表达式开头的文件。


更一般地说,要在名称与 REGEX 匹配的文件中搜索 PATTERN,可以使用:

ag -G REGEX PATTERN

(同ag --file-search-regex REGEX PATTERN

查看手册以获取有关 ag 的更多信息。

于 2017-04-06T13:33:18.103 回答