13

Я начал использовать ack, который намного быстрее, чем grep. Однако, используя ack, я хочу искать имя файла, а не его содержимое. Есть способ сделать это?

4 ответа4

21
ack -g REGEX

Распечатать файлы, где относительный путь + имя файла соответствует REGEX

16

Используйте правильный инструмент для правильной работы. Если вы хотите найти имя файла, используйте 'find':

$ # search for all *.txt file in current directory
$ find . -iname "*.txt"
7

Я согласен, что имеет смысл использовать find, если вы просто ищете * .txt файлы. Тем не менее, ack имеет мощные функции обнаружения типов файлов, так что вы можете использовать

ack -f --perl

который найдет все файлы Perl, основываясь как на имени файла (* .pm, * .pl, * .t и * .pod), так и на строке shebang.

1

Ты можешь сделать :

ack -f | ack "filename.ext"

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .