我注意到ack-grep并没有忽略python与源代码一起创建的<module>.egg-info
目录。我希望我能添加
--ignore-dir=*.egg-info
or
--ignore-file=ext:egg-info
作为一个catchall而无需手动将每个项目的.egg-info目录添加到〜/ .ackrc。
有没有办法在不必手动添加全部内容的情况下执行此操作?
答案 0 :(得分:1)
在指定类型时,您可以使用相同的过滤系统来指定--ignore-dir
。使用ack --dump
查看默认设置,他们应该会告诉您如何执行此操作。 (以及在ack --man
手册中查看&#34;指定您自己的类型&#34;
所以你可以这样做:
ack --ignore-dir=match:[.]egginfo$ whatever
请注意,当您使用match
时,它是一个Perl正则表达式,而不是一个glob。这就是&#34;忽略名称末尾与.egginfo
匹配的任何目录&#34;。 .
是一个元字符,放在一个字符类([.]
)中以删除其特殊含义。您也可以使用\.
,但这也会与shell混淆。
所以你可以将--ignore-dir=match:[.]egginfo$
放在〜/ .ackrc中,不再担心了。
...
对于我们这些不熟悉Python生态系统的人,您能详细说明<module>.egg-info
目录是什么,以及它们在何处以及如何创建?它基本上是一个构建目录吗?我是ack的作者,这听起来像是默认情况下ack可能有用的东西。