Как искать файлы без слова TEST с помощью ack

Я люблю подтверждать.

Мне нужно искать «foo» во всех файлах, кроме тестовых.

В ack есть опция -G для указания регулярного выражения. Однако я не уверен, как мне написать регулярное выражение для условия, которое ищет все файлы, но игнорирует файлы со словом «тест».


person Nick Vanderbilt    schedule 14.05.2010    source источник


Ответы (1)


Начиная с ack 2.0, вам нужно указать тип файла, а затем выполнить фильтрацию на его основе. В этом случае вы хотите пропустить файлы, в которых есть слово test:

ack --type-set testfiles:match:'test' --type=notestfiles pattern

Примечание. Я использую отрицательное значение типа файла testifies, поэтому я добавил no к типу файла в соответствии с документацией:

--type = noX Исключить X файлы. См. "Ack --help-types" для получения информации о поддерживаемых типах файлов.

person gregory    schedule 12.06.2019