
Я видел, что в некоторых Linux-системах grep
настроено выделение совпадений и печать соответствующего файла.
Как настроить grep
подсветку совпадений?
решение1
Я обнаружил, что лучший способ прокачать grep — это использоватьакк, который по сути является рекурсивным grep с интеллектуальным списком игнорирования (например, не ищет в каталогах .svn, игнорирует файлы резервных копий и т. д.), цветной подсветкой результатов и регулярными выражениями perl. Это то, что вы хотите, чтобы grep делал в 98,6% случаев.
решение2
alias cgrep='grep -nR --color'
Использование:
$ cgrep somestring /path/to/dir/or/file/with*/possible/*wild.card
Также один из моих любимых:
$ pgrep some-hanging-process
выведет список всех pid процессов, которые соответствуют имени some-hanging-process, который можно использовать в следующей ситуации:
$ kill $(pgrep some-hanging-process)
решение3
Я установил это в своем .bashrc вместо того, чтобы переопределять grep с помощью псевдонима:
export GREP_OPTIONS="--color=auto"
У меня это работает на Linux, MacOSX и FreeBSD.
решение4
Эта --color
опция уже упоминалась несколько раз, но я хотел бы добавить, что можно настроить цвет, которым будут подсвечиваться совпадения, с помощью переменной окружения.
export GREP_COLOR="1;33"
Цвет должен быть закодирован с использованием цветовых кодов ANSI для справки.
Black 0;30 Dark Gray 1;30
Blue 0;34 Light Blue 1;34
Green 0;32 Light Green 1;32
Cyan 0;36 Light Cyan 1;36
Red 0;31 Light Red 1;31
Purple 0;35 Light Purple 1;35
Brown 0;33 Yellow 1;33
Light Gray 0;37 White 1;37