Colorify grep output
Заради невероятно бързата си и точна работа, grep вероятно е най-полезният инструмент при търсене на определен низ в списък от резултати, файлове или устройства и е сред причините, заради които харесвам командният ред в Linux/Unix. Не зная колко често Ви се е налагало да търсите сред файловете в дадена директория (дори включително и в нейните поддиректории) за съдържанието на определена дума или комбинация, но лично аз в ежедневната си работа поне два-три пъти дневно се възползвам от услугите на grep за целта.
Преди време попаднах на статия, в която се споменаваха някои от по-рядко използваните опции от функционалността на програмата. Една от тях е оцветяване на резултатите, подобно на начина по който някои от търсачките оцветяват ключовите думи, по които извършвате търсенето си. Ето как изглежда резултатът от работата на grep при използване на оцветяване:

За да накарате grep да оцветява резултатите е достатъчно да добавите следните два реда във файла ~/.bashrc (разбира се, ако ползвате друг shell ще трябва да добавите опциите във файла, от който конфигурирате поведението му):
export GREP_OPTIONS='--color=always' export GREP_COLOR=32
Стойността на GREP_COLOR е цифра между 30 и 37 и означава, както следва:
30 black 31 red 32 green 33 yellow 34 blue 35 purple 36 cyan 37 white
Не вярвам да има някой, който да се усъмни в полезността на оцветяването на срещанията – на мен поне със сигурност ми помагат да се ориентирам в пъти по-бързо сред върнатите резултати. Bonus feature е опцията --line-buffered която буферира всеки ред, правейки търсенията в дълги текстови файлове значително по-бързи.
Update: Преди малко установих, че set-ването на GREP_OPTIONS като root причинява проблем при компилиране на ядрото – при изпълнение на make modules процесът спира веднага след навлизане във втория стадий на компилацията, издавайки следното съобщение:
Building modules, stage 2. MODPOST 0 modules
Изглежда make-файловете на ядрото ползват променливата GREP_OPTIONS по някакъв по-специфичен начин и решението е да избегнете директното й set-ване, като за целта е достатъчно във файла ~/.bashrc, да замените реда
export GREP_OPTIONS='--color=always'
с този:
alias grep='grep --color=always'
Маркери: linux, tips, unix
За тази статия
В момента четете "Colorify grep output", статия в stinger's thoughts
Отпечатване на статията
- Публикувана на:
- 10.08.2007 в 13:43
- Категория:
- Linux/UNIX
- Изпращане:
- Изпрати чрез email
Категории
- Books (10)
- Linux/UNIX (66)
- Movies (32)
- Music (73)
- Web Development (59)
- Други (182)






















IE8 Webslice
RSS с публикации
Няма коментари
RSS с коментaрите