ack командная строка ack-set, похоже, не работает

Я пытаюсь найти файлы 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 находит то, что я ищу, но почему ack не может?

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

Используемая версия ack — 1.96.


person seron    schedule 13.01.2014    source источник


Ответы (1)


Если ack --unrestricted не может его найти, то что-то не так с тем, как вы его вызываете, потому что ack -u фактически является grep.

ack разработан специально для поиска исходного кода, а не как замена grep общего назначения. Мне кажется, что вы на самом деле не ищете исходный код. Я бы посоветовал вам использовать grep для задач, не связанных с поиском исходного кода.

person Andy Lester    schedule 16.01.2014