ターミナルで色をつける
bashプロンプトに色をつける要領で、pythonで端末制御シーケンスを使って色をつけてみた
ここを参考にそれぞれの色の名前の関数を作ってみた。
#!/usr/bin/env python # -*- coding: utf8 -*- #col.py # def getcolor(colorname): colors = { 'clear': '\033[0m', 'black': '\033[30m', 'red': '\033[31m', 'green': '\033[32m', 'yellow': '\033[33m', 'blue': '\033[34m', 'purple': '\033[35m', 'cyan': '\033[36m', 'white': '\033[37m' } def func2(c): return colors[colorname] + c + colors['clear'] return func2 black = getcolor('black') red = getcolor('red') green = getcolor('green') yellow = getcolor('yellow') blue = getcolor('blue') purple = getcolor('purple') cyan = getcolor('cyan') white = getcolor('white') a = "this is a test message" print red(a) print white(a) print cyan(a) print purple("test ") + yellow("message")
実行例は画像の通り。色がついた。嬉しい。
sarやvmstatとか一定の値を超えた場合のみ色つけたり、tail -fで見ている時に注意すべきものにmatchした行だけ色つけたり、とか。使い道はいろいろ多い。