トラブルシューティングを簡単にするために、wim、less、またはその他の手段を使用して大容量(〜6000行)のログファイルを表示する方法を変更したいと思います。
error
ログ内の特定の行(...など)を強調表示したり、パターンに応じて他の行を非表示にしたいです。warning
info
どのツールを使用できますか?シェルスクリプトだけが必要ですか?重要なことは、プロセスの後に検索操作を実行するためにless、vimなどを使用して出力を読み取ることができることです。
編集:ログの小さな部分:
2016/10/25 12:19:24.403355 INFO <ServiceManager.cpp#2614 TID#3> Security object has NOT been parsed
2016/10/25 12:19:24.403369 INFO <ServiceManager.cpp#1263 TID#3> Service object sequence started
2016/10/25 12:19:24.403372 DBG <ServiceManager.cpp#1276 TID#3> preinvoke succeeded
ベストアンサー1
awk
Valentin B.のソリューションのようなものに基づいたシェルスクリプトをお勧めします。
$ cat colorize
awk '
function color(c,s) {
printf("\033[%dm%s\033[0m\n",30+c,s)
}
/error/ {color(1,$0);next}
/success/ {color(2,$0);next}
/warning/ {color(3,$0);next}
/INFO/ {color(4,$0);next}
/DBG/ {color(5,$0);next}
{print}
' $1
カラー出力を対話形式で表示するには、less
rawモードを使用します。たとえば、次のようになります。
colorize mylog.txt | less -R