はじめに
シェルスクリプトで一連の処理を書く際に、色をつけると成功の可否がわかりやすくなったりします。
文字列の色を変える
color.sh
#!/bin/sh
cd "$(dirname "$0")"
# 黒
echo -e "\e[30m黒\e[0m"
# 赤
echo -e "\e[31m赤\e[0m"
# 緑
echo -e "\e[32m緑\e[0m"
# 黄色
echo -e "\e[33m黄色\e[0m"
# 青
echo -e "\e[34m青\e[0m"
# マゼンタ(紫)
echo -e "\e[35mマゼンタ(紫)\e[0m"
# シアン(水色)
echo -e "\e[36mシアン(水色)\e[0m"
# 白
echo -e "\e[37m白\e[0m"
# 明るい黒(グレー)
echo -e "\e[90m明るい黒(グレー)\e[0m"
# 明るい赤
echo -e "\e[91m明るい赤\e[0m"
# 明るい緑
echo -e "\e[92m明るい緑\e[0m"
# 明るい黄色
echo -e "\e[93m明るい黄色\e[0m"
# 明るい青
echo -e "\e[94m明るい青\e[0m"
# 明るいマゼンタ(明るい紫)
echo -e "\e[95m明るいマゼンタ(明るい紫)\e[0m"
# 明るいシアン(明るい水色)
echo -e "\e[96m明るいシアン(明るい水色)\e[0m"
# 明るい白
echo -e "\e[97m明るい白\e[0m"
exit 0
文字列の背景色を変える
color.sh
#!/bin/sh
cd "$(dirname "$0")"
# 黒い背景
echo -e "\e[40m黒い背景\e[0m"
# 赤い背景
echo -e "\e[41m赤い背景\e[0m"
# 緑の背景
echo -e "\e[42m緑の背景\e[0m"
# 黄色い背景
echo -e "\e[43m黄色い背景\e[0m"
# 青い背景
echo -e "\e[44m青い背景\e[0m"
# マゼンタ(紫)の背景
echo -e "\e[45mマゼンタ(紫)の背景\e[0m"
# シアン(水色)の背景
echo -e "\e[46mシアン(水色)の背景\e[0m"
# 白い背景
echo -e "\e[47m白い背景\e[0m"
# 明るい黒(グレー)の背景
echo -e "\e[100m明るい黒(グレー)の背景\e[0m"
# 明るい赤の背景
echo -e "\e[101m明るい赤の背景\e[0m"
# 明るい緑の背景
echo -e "\e[102m明るい緑の背景\e[0m"
# 明るい黄色の背景
echo -e "\e[103m明るい黄色の背景\e[0m"
# 明るい青の背景
echo -e "\e[104m明るい青の背景\e[0m"
# 明るいマゼンタ(明るい紫)の背景
echo -e "\e[105m明るいマゼンタ(明るい紫)の背景\e[0m"
# 明るいシアン(明るい水色)の背景
echo -e "\e[106m明るいシアン(明るい水色)の背景\e[0m"
# 明るい白の背景
echo -e "\e[107m明るい白の背景\e[0m"
exit 0
文字列の色と背景色を変える
テキストと背景が同系色の組み合わせと、低コントラストの組み合わせは視認性が悪いので避けてます。
color.sh
#!/bin/sh
cd "$(dirname "$0")"
# 黒文字の見やすい背景
echo -e "\e[30;107m黒文字、明るい白の背景\e[0m"
echo -e "\e[30;103m黒文字、明るい黄色の背景\e[0m"
# 赤文字の見やすい背景
echo -e "\e[31;47m赤文字、白の背景\e[0m"
echo -e "\e[31;103m赤文字、明るい黄色の背景\e[0m"
# 緑文字の見やすい背景
echo -e "\e[32;40m緑文字、黒の背景\e[0m"
echo -e "\e[32;100m緑文字、明るい黒(グレー)の背景\e[0m"
# 黄色文字の見やすい背景
echo -e "\e[33;40m黄色文字、黒の背景\e[0m"
echo -e "\e[33;44m黄色文字、青の背景\e[0m"
# 青文字の見やすい背景
echo -e "\e[34;103m青文字、明るい黄色の背景\e[0m"
echo -e "\e[34;47m青文字、白の背景\e[0m"
# マゼンタ(紫)文字の見やすい背景
echo -e "\e[35;40mマゼンタ文字、黒の背景\e[0m"
echo -e "\e[35;46mマゼンタ文字、シアンの背景\e[0m"
# シアン(水色)文字の見やすい背景
echo -e "\e[36;40mシアン文字、黒の背景\e[0m"
echo -e "\e[36;100mシアン文字、明るい黒(グレー)の背景\e[0m"
# 白文字の見やすい背景
echo -e "\e[37;40m白文字、黒の背景\e[0m"
echo -e "\e[37;44m白文字、青の背景\e[0m"
# 明るい黒(グレー)文字の見やすい背景
echo -e "\e[90;40m明るい黒文字、黒の背景\e[0m"
echo -e "\e[90;47m明るい黒文字、白の背景\e[0m"
exit 0