回答:
KEYWORD
されるため、がない行は無視されます。
これが見つかりました:http : //fixunix.com/unix/83044-tail-color.html
tail -f file | perl -pe 's/keyword/\e[1;31;43m$&\e[0m/g'
これはANSI端末でのみ機能しますが、他のすべての端末は事実上絶滅しています。\ e [... m ist ANSIエスケープシーケンスSGR「select graphic rendition」。「...」は、セミコロンで区切られた整数で置き換えることができます。意味は次のとおりです。
0:すべての属性をオフ1:太字31:前景の赤43:背景の黄
"keyword"はもちろん、任意のperl正規表現にすることができます。
(foo | bar)文字列fooおよびbarを強調表示します\ b((foo | bar)\ b単語fooおよびbarを強調表示します。\ b((foo | bar)\ b。単語fooまたはbarを含む行全体を強調表示します
または、簡単な方法として、colortail
おそらくお気に入りのリポジトリ(CentOSのDAG)にインストールするだけです。
http://developwithstyle.com/articles/2010/04/20/tail-your-logs-with-a-touch-of-color.html
いくつかの色を取得するために、grepの組み合わせで小さなスクリプトを使用します。
#!/bin/bash
shopt -s expand_aliases
alias grey-grep="GREP_COLOR='1;30' grep -E --color=always --line-buffered"
alias red-grep="GREP_COLOR='1;31' grep -E --color=always --line-buffered"
alias green-grep="GREP_COLOR='1;32' grep -E --color=always --line-buffered"
alias yellow-grep="GREP_COLOR='1;33' grep -E --color=always --line-buffered"
alias cyan-grep="GREP_COLOR='1;36' grep -E --color=always --line-buffered"
tail -1000f /var/log/apache2/error.log | grey-grep ".*PerformanceLogger.*|$" | cyan-grep "INFO|$" | yellow-grep "WARN|$" | red-grep "[ERROR].*|[FATAL].*|$" | green-grep "***|$"
ポイントは、チェーンされたすべてのgrepが異なる色を追加することです。したがって、結果は次のようになります。
これらのカラライザーには見られなかった機能が1つあります-応答時間を強調表示します(時間が長い->より驚くべき色)。最新のターミナルエミュレータでの256色のサポートは、ここで役立ちます。