Украинское сообщество программистов

ack == grep для программиста

Макс Ищенко
Опубликовано 8.10.2007 в Статьи

Для тех, кто как и я, ведет разработку не в IDE, а при помощи простого редактора + утилит комстроки, я бы хотел рассказать о маленькой но очень удобной утилитке ack.

Как понятно из заголовка, эта программка – вариация на тему grep, но с некоторыми приятными дополнениями, которые упрощают типичные паттерны использования grep программистом. Итак, ack:

  1. “Знает” о служебных директориях SCM-систем, таких как CVS/.svn, и игнорирует их содержимое. В случае, например, SVN, это очень удобно, т.к. в этих директориях хранится полная копия рабочей копии и при использовании grep приходится делать | grep -v .svn.
  2. Имеет рекурсивный поиск по умолчанию. Лично мне уже надоело дописывать -r к каждому вызову grep. А вам?
  3. “Понимает” поиск по типам файлов. Можно сказать, например ack --python, чтобы поиск шел в только в *.py файлах либо ack text-align static/ --nojs --nohtml для поиска во всех типах файлов кроме *js и *html.
  4. Поддерживает популярные ключи grep, как-то -w или -l.

Я использую ack уже несколько месяцев и очень доволен. Она с лихвой заменила мне мою собственную “версию” grep ( function pygrep () { grep -r --exclude="*svn-base" --exclude="*pyc" --exclude="*bak" "$@"; })

Так что рекомендую. Установка труда не составляет, т.к. это всего один файл:
wget -O ~/bin/ack <a href="http://ack.googlecode.com/svn/tags/latest/ack-standalone" class="linkification-ext" title="Linkification: http://ack.googlecode.com/svn/tags/latest/ack-standalone">http://ack.googlecode.com/svn/tags/latest/ack-standalone</a> && chmod a+x ~/bin/ack.

Теги: , , , ,

1 звезда2 звезды3 звезды4 звезды5 звезд (1 голосов, средний: 5 из 5)
Загрузка ... Загрузка ...
Распределение голосов

Понравилась статья? Подпишись на обновления по RSS/E-mail

Подписаться, не оставляя комментарий

Все комментарии (3) к “ack == grep для программиста” RSS

  1. mkdir

    Классная утилитка!

  2. bialix

    поскольку мне лень ставить Perl на windows, то я в качестве упражнения переписал ее на питоне (частично, правда, все ключи не реализовал). И, да! Добавил поддержку Bazaar. :-)

  3. Caujka

    Адская штука. Сначала решил не ставить, только описание почитал. Подумалось: “а зачем? Велосипед.”

    А тут таки попробовал… привыкание моментальное.

    Пасиб.

Оставить комментарий

Указать свой сайт могут только зарегистрированные пользователи. Регистрация или вход.

Архив

Добавить статью

Станьте автором нашего сайта!

Какие материалы подходят для публикации? — Такие.

Присылайте статьи на editors@developers.org.ua.

Подробнее.

Популярные теги

Все теги

Комментарии

Последние комментарии

интернет магазин бытовая техника магазин Laptoper