Linux の echo
コマンドで特殊なエスケープシーケンスを出力すると、テキストの文字を変更することができます。
次の Bash スクリプトでは、色を変更しつつ echo
出力する、error
/ warn
/ info
関数を定義しています。
#!/bin/bash
error() {
echo -e "\033[31m$*\033[00m" >&2
}
warn() {
echo -e "\033[33m$*\033[00m" >&2
}
info() {
echo -e "\033[32m$*\033[00m" >&2
}
error 'Error message'
warn 'Warning message'
info 'Information message'
このシェルスクリプトを実行すると、次のように色付きのメッセージが表示されます。

ちなみに、echo
コマンドの末尾の >&2
は、標準エラー出力へ出力することを示しています。