綾小路龍之介の素人思考

[linux] 標準出力に含まれるキーワードをsedで色付け

コンソールのカラーコードとキーワード置換にsedを使って色づけをしてみる。

sedを使ってコンソールに出力される内容に含まれるキーワードを色づけする。以下の例ではremoveとunlinkにマゼンダを、DEBUGにシアンを色づけしている。

$ cat log.txt | sed  -e 's#\(remove\|unlink\)#\x1b[35m\1\x1b[0m#g' -e 's#\(DEBUG\)#\x1b[36m\1\x1b[0m#g'

コンソールの制御文字は何でも使えるので、青文字赤背景なんてのもできる。

$ cat log.txt | sed  -e "s/\(remove\)/\x1b[41m\x1b[34m\1\x1b[0m/g"

リファレンス

  1. もう一度基礎からC言語 第47回 特殊な画面制御~コンソール入出力関数とエスケープシーケンス エスケープシーケンスによる画面制御
  2. Escapes - sed, a stream editor

ソーシャルブックマーク

  1. はてなブックマーク
  2. Google Bookmarks
  3. del.icio.us

ChangeLog

  1. Posted: 2010-09-22T18:00:51+09:00
  2. Modified: 2010-09-22T18:00:51+09:00
  3. Generated: 2017-06-23T23:09:18+09:00