3

我在文件FOOfoo.cc.

有没有办法告诉ack-grep搜索没有扩展名(即FOO)的内部文件?

我试过这样的事情:

ack-grep --type-set=foo=FOO bar

它返回 foo.cc 中的文本,但不返回文件 FOO。

我还将 --type-set 添加到我的 .ackrc 文件中,调用

ack-grep --help-types

表明 ack-grep 正在寻找.FOO文件。

4

3 回答 3

2

我的确认是 2.12 版。波纹管命令应该可以工作。

$ ack --type-set make:is:Makefile --type=make string-pattern

所以同样地,

$ ack --type-set foo:is:FOO --type=foo string-pattern
于 2014-07-23T04:52:09.610 回答
1

您可以将ack-grep's -a(搜索所有内容)与-G(仅搜索与给定正则表达式匹配的文件)结合起来。就像是:

ack-grep -a -G '^[^.]+$' what-to-search-for

应该做的伎俩。

在 ack2 下你必须定义一个自定义类型:

ack-grep --WANTED --type-set WANTED:match:^[^.]+$ what-to-search-for

为我工作。

于 2013-07-19T16:53:26.970 回答
1

你不能用 ack 1.x 做你想做的事。您需要升级到ack 2.0

ack 1.x 没有办法处理没有扩展名的文件。ack 2.0 增加了一个更加灵活的文件规范系统。

于 2013-07-20T05:14:09.357 回答