それマグで!

知識はカップより、マグでゆっくり頂きます。 takuya_1stのブログ

習慣に早くから配慮した者は、 おそらく人生の実りも大きい。

Bashでカラフルにするエスケープシーケンスを色々

適当にいじってたらPS1がおかしくなったんのです。残念。 仕方ないので、しっかり整理し直すことにしました。

エスケープシーケンスのカラーサンプル

ScrenCaptured 2015-10-06 18.16.05

エスケープシーケンスの基本

開始 \e[数字m 
終了 \e[0m

文字色を変える

echo -ne ' \e[34m sample \e[0m\n'

この基本をふまえて、あとは、複数組み合わせて好きなものを作る

まとめて書くことが可能

echo -ne ' \e[1;4;34m sample \e[0m\n'

複数の重ねがけも可能

追加していくことが可能。

 \e[1m aaa \e[4m bbb \e[34m;cccc \e[0m

256色について

256色については、参考資料のサイトが詳しい

printf "this is \e[48;5;206;97;38;5;227mfull\e[0m \e[48;5;82;97;38;5;57mcolor\e[0m text.\n"

まとめてサンプル

#!/usr/bin/env bash 
#
echo -ne  "太字・下線・青色"
printf ' \e[1;4;34m sample \e[0m\n'


echo -ne "背景色を入れる "
printf "\e[106mここの背景は青い\e[0m\n"



echo -ne "文字色を反転"
printf "\e[7m 反転 \e[0m\n"


echo -ne " 点滅 " #ターミナルによっては反応しない
printf "\e[5m 文字を点滅 \e[0m\n"


echo -ne " 下線 "
printf "\e[4m 下線を引く \e[0m\n"


echo -ne " 太文字 "
printf "this is \e[1mBOLD\e[0m text.\n"


echo -ne " 太字下線を重ねがけ "

printf "this is \e[1;4m重ねがけ\e[0m text.\n"


echo -ne " 背景・文字色を重ねがけ "
printf "this is \e[106;97mBOLD\e[0m text.\n"

echo -ne " 256色から自由に選ぶ "
printf "this is \e[48;5;206;97;38;5;227mfull\e[0m \e[48;5;82;97;38;5;57mcolor\e[0m text.\n"


echo -ne '256色カラーサンプル(背景'
for c in {0..255}; do printf "\033[48;5;${c}m \033[m"; if [ $(($c%16)) == 0 ] ;then echo "";fi done; echo

実行するとこんな感じ

youtu.be

参考

d.hatena.ne.jp