我在文件FOO
和foo.cc
.
有没有办法告诉ack-grep
搜索没有扩展名(即FOO
)的内部文件?
我试过这样的事情:
ack-grep --type-set=foo=FOO bar
它返回 foo.cc 中的文本,但不返回文件 FOO。
我还将 --type-set 添加到我的 .ackrc 文件中,调用
ack-grep --help-types
表明 ack-grep 正在寻找.FOO
文件。
我的确认是 2.12 版。波纹管命令应该可以工作。
$ ack --type-set make:is:Makefile --type=make string-pattern
所以同样地,
$ ack --type-set foo:is:FOO --type=foo string-pattern
您可以将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
为我工作。
你不能用 ack 1.x 做你想做的事。您需要升级到ack 2.0。
ack 1.x 没有办法处理没有扩展名的文件。ack 2.0 增加了一个更加灵活的文件规范系统。