ack命令行ack-set似乎不起作用

时间:2014-01-13 10:51:58

标签: grep ack

我正在尝试搜索systemd .service文件,但是ack似乎找不到任何东西。我尝试了这些选项无济于事:

ack --type-set sysd=.service --sysd MAINPID
ack --all MAINPID
ack --unrestricted MAINPID

使用type-set时,ack会重新识别新类型:

# ack -type-set sysd=.service --help types | grep sysd
--[no]sysd         .service

使用grep而不是ack找到我正在寻找的东西,但为什么不能使用?

# grep MAINPID -R .
./multi-user.target.wants/vixie-cron.service:ExecStop=/bin/kill -TERM $MAINPID
...

使用的ack版本是1.96。

1 个答案:

答案 0 :(得分:0)

如果ack --unrestricted无法找到它,那么您调用它的方式就出错了,因为ack -u实际上是grep

ack是专为搜索源代码而设计的,而不是作为通用grep替代品。在我看来,你实际上并没有搜索源代码。我建议您使用grep来查找未搜索源代码的任务。