Bashのスクリプトをデバッグする方法です。
Bashのスクリプトをデバックする方法は?
「bash -x」コマンドを使用して、スクリプトを実行します。
サンプルのスクリプトを用意する!
以下のサンプルのスクリプトを要します。
$ cat sample_bash_03.sh #!/bin/bash # # Usage : sample_bash_03.sh $1 # Version : 1.0 # SHELL_NAME=`basename $0` STA_MSG=Start! END_MSG=End! # START /usr/bin/logger -ip local0.crit -t ${SHELL_NAME} ${STA_MSG} # Main if [[ $# -ge 2 ]]; then MSG="Too many Arguments : $#" elif [[ -z "$1" ]]; then MSG="Default" else MSG=$1 fi echo "$MSG" # END /usr/bin/logger -ip local0.crit -t ${SHELL_NAME} ${END_MSG} exit 0
スクリプトをトレースする!
「bash -x」コマンドを使用して、スクリプトをトレースします。実行された行と、変数の値を知ることができます。
$ bash -x sample_bash_03.sh ++ basename sample_bash_03.sh + SHELL_NAME=sample_bash_03.sh + STA_MSG='Start!' + END_MSG='End!' + /usr/bin/logger -ip local0.crit -t sample_bash_03.sh 'Start!' + [[ 0 -ge 2 ]] + [[ -z '' ]] + MSG=Default + echo Default Default + /usr/bin/logger -ip local0.crit -t sample_bash_03.sh 'End!' + exit 0
おわりに
Bashで作成したスクリプトの動作を解析する場合は、「bash -x」コマンドでスクリプトを実行して、スクリプトの動作をトレースします。
関連記事
関連書籍(Amazon)