Powershell Silver Searcher-如何忽略文件
根据文件,应该是Powershell Silver Searcher-如何忽略文件,powershell,cmd,ag,Powershell,Cmd,Ag,根据文件,应该是 --ignore PATTERN 我有一个包含标签的文件,名为“标签”。我尝试了以下方法,每个方法仍然在标记文件中搜索 ag -Qt --ignore ".*tags" "asdf" ag -Qt --ignore .*tags "asdf" ag -Qt --ignore "tags" "asdf" ag -Qt --ignore tags "asdf" ag -Qt --ignore *tags 而且它们都不起作用 如果我使用建议的内容,那么ag根本不接受 我试
--ignore PATTERN
我有一个包含标签的文件,名为“标签”。我尝试了以下方法,每个方法仍然在标记文件中搜索
ag -Qt --ignore ".*tags" "asdf"
ag -Qt --ignore .*tags "asdf"
ag -Qt --ignore "tags" "asdf"
ag -Qt --ignore tags "asdf"
ag -Qt --ignore *tags
而且它们都不起作用
如果我使用建议的内容,那么ag根本不接受
我试图通过将其重命名为temp.tags并使用*.tags
模式尝试忽略它来解决这个问题,但仍然不起作用
有什么想法吗?你试过使用单引号吗?我知道我肯定被双引号和无引号难倒了,结果发现单引号有效
ag -Qt --ignore '*tags'
经过一些研究,这似乎是一个已知的问题。如果您执行--all text(-t)搜索,它将覆盖--ignore,因为它正在搜索所有文本。此问题也存在于--不受限制。我尝试了您发布的链接(使用glob而不是regex),但删除了“=”符号,效果良好。将要排除的文件列表放入
.agignore
注意:正如@DenilsonSáMaia所提到的,
.agignore
将被弃用,取而代之的是.ignore
对于我来说,以下工作(在
ag
0.18.1版中):
只添加多个--忽略,至少这对我有用:
ag -Qt --ignore ".*tags" --ignore asdf
如果你不加引号,它就会被解释为目录,如果你把引号作为模式,我发现,--ignore
不带正则表达式
这将有助于:
ag --ignore="*_test.rb" "SomeAwesomeClass"
从v2.2.0开始(很可能是更早的版本;我刚从现有的版本中退出),所有这些答案似乎都不起作用。对我来说,成功的是:
ag searchterm --ignore=*.log --ignore=*.txt
注意
忽略选项后的=
。您也可以创建。忽略文件以忽略源存储库中的内容。ignore使用与.gitignore和.hgignore相同的模式。使用.ignore可以显著提高搜索速度
如果你想要一个Global。忽略文件,考虑添加这个别名:
alias ag='ag --path-to-ignore ~/.ignore'
到您的~/.bash\u配置文件
(或类似)文件我刚刚将.agignore文件放入我的用户根文件夹中,它就可以工作了
默认情况下,ag将忽略中模式匹配的文件
.gitignore、.hgignore或.agignore。这些文件可以在中的任何位置
正在搜索的目录。Ag也会忽略由
svn:忽略subversion存储库中的属性最后,ag开始查看
$HOME/.agignore用于忽略模式。二进制文件被忽略
违约也是如此
为什么你的单引号看起来像反勾号?我无法重现让globs处理这个问题。你能贴出对你有效的那句话吗?回答得很好。有关.agignore的更多详细信息,请参阅:.agignore
将被弃用,取而代之的是.ignore
:.agignore
与ag 2.0.0版一起使用,请检查源代码。您可以将.ignore文件全局添加为~/.ignore(而不是在项目根级别)。或者,您也可以将要排除的文件或文件夹添加到.gitignore中。.agignore
是正确的文件。现在是2021年,它还没有被弃用。。可能永远不会.ignore
无论如何都会是一个糟糕的名字,因为你不知道它到底属于什么,而且可能会有另一个应用程序使用它。我发现这个答案与@ArturMałecki的答案相结合,涵盖了为什么--ignore对我不起作用。
alias ag='ag --path-to-ignore ~/.ignore'