- Published on
Bashのデバッグログ(トレース)を装飾してカラフルに
- Authors
- Name
- Shou Arisaka / 有坂翔
Bashのデバッグログ(トレース)をかっこよくするだけです。
Bashのデバッグログ(トレース)を装飾して、より見やすく、カラフルに表示する方法を紹介します。この方法を使用すると、デバッグ情報が見やすくなり、エディタやログでの作業が楽しくなります。
PS4のカスタマイズ
Bashのデバッグログを装飾するには、PS4
環境変数をカスタマイズします。以下は、PS4
をカラフルに装飾する例です:
red=$'\e[1;31m'
grn=$'\e[1;32m'
yel=$'\e[1;33m'
blu=$'\e[1;34m'
mag=$'\e[1;35m'
cyn=$'\e[1;36m'
end=$'\e[0m'
export PS4='+(v\V ${yel}\#${end} ${cyn}\t${end} ${mag}${BASH_SOURCE}:${LINENO}${end}): ${blu}${FUNCNAME:+$FUNCNAME()}${end}: '
このコードは、PS4
をカスタマイズしてデバッグログの各部分に色を付け、関数名やファイル名、行番号などを装飾します。
トグルデバッグ
さらに、デバッグを簡単に有効または無効に切り替えるための関数 sx
を追加することもできます。以下は sx
関数の例です:
sx() {
# "set -x/+x"をトグルするためのコマンド
# 例: sx
if [[ ${sx_status} =~ enabled ]]; then
set +x
printf "\n\n${grn}デバッグが無効になりました。${end}\n\n"
sx_status=disabled
return 0
elif [[ ${sx_status} =~ disabled| ]]; then
set -x
printf "\n\n${red}デバッグが有効になりました。${end}\n\n"
sx_status=enabled
return 0
fi
}
この sx
関数を使用すると、デバッグを有効または無効に切り替えることができ、デバッグステータスをカラフルに表示します。
これらのカスタマイズを使用することで、Bashのデバッグログが見やすく、トレースが楽しくなるかもしれません。
以上となります。