Пример, выделения слова Reject при просмотре хвоста почтового лога:
tail -f /var/log/maillog |perl -p -e 's/Reject/\033\[46;1mReject\033[0m/gi;'Если нужно не только выделять цветом, но и подавать звуковой сигнал при появлении test@test.ru:
tail -f /var/log/maillog |perl -p -e 's/(test\@test.ru)/\033\[46;1m$1\033[0m\007/gi;'URL: http://www.opennet.me/base/dev/console_ctl.txt.html
Обсуждается: http://www.opennet.me/tips/info/816.shtml
А sed'ом слабо такое сделать?
зачем perl заводить для этого?
Во FreeBSD не GNU sed и grep тоже. Покажите мне, как это сделать ими?
tail -f /var/log/messages | sed 's/sudo/^[[46;1msudo^[[0m/g'
забыл сказать
~ > uname -srm
FreeBSD 5.4-PRERELEASE i386все штатное
grep --color
(grep (GNU grep) 2.5.1-FreeBSD)
>grep --color
>(grep (GNU grep) 2.5.1-FreeBSD)А строки не попавшие под маску grep ?
Хотя оперируя -B и -C еще удобнее получается.
Народ ткните ноcом меня где можно подробно прочитать о ^[\[46;1m ^[[0m и разобраться раз и навсегда.
http://www.opennet.me/base/dev/console_ctl.txt.html
Сложности какие...
less mail.log
далее - /что_искать (поиск слова что_искать)
Далее - Shift-F
Все. что_искать будет появляться выделенное цветом.
Дельный совет!
А вот как выделить налету разными цветами нужные части лога по маске:
SMTP session terminated - красным цветом
SMTP session successful - зеленым?