ふと、Rails のログなど ANSI エスケープシーケンス使って吐かれたテキストを HTML に変換したくなったので調べてみたら、ansifilter なるものがあるらしい。
CentOS 7 だと yum でインストール出来た(epel リポジトリ)。
ubuntu 16.04 LTS だと apt-get でインストール出来ないので、ソースを取得して、make、適当な所にコピー(もしくは make install で /usr/bin にインストール)。
$ wget http://www.andre-simon.de/zip/ansifilter-2.0.tar.bz
$ tar jxf ansifilter-2.0.tar.bz2
$ cd ansifilter-2.0/
$ make
$ cd src
$ cp ansifilter ~/bin
例えば、Rails の development.log を HTML に変換したい場合は、以下の通り。
$ ansifilter development.log -H > out.html