ack-grep показывает только совпадающие имена файлов. Не показывать соответствующий контент

1080
poc

Я ищу некоторые ключевые слова среди минимизированных файлов. Не имеет смысла показывать этот минимизированный контент. Как я могу использовать ack-grep 'SEARCH_WORD' и показывать только совпадающие имена файлов

2

2 ответа на вопрос

3
Andy Lester

Оба ackи grepимеют -lпараметр, который показывает только имя файла. Вы также можете использовать, -cчтобы получить количество совпадений в каждом файле.

Обратите внимание, что если вы ищете минимизированные файлы, вы можете столкнуться с проблемами, ackпотому что это специально исключает множество минимизированных файлов. Беги, ack --dump | ack ignoreчтобы увидеть, что ackигнорирует.

1
djsmiley2k

Стандартный вариант grep -l(то есть строчная буква L) может сделать это.

Из стандарта Unix :

-l (The letter ell.) Write only the names of files containing selected lines to standard output. Pathnames are written once per file searched. If the standard input is searched, a pathname of (standard input) will be written, in the POSIX locale. In other locales, standard input may be replaced by something more appropriate in those locales. 

Бесстыдная кража из этого поста.