シェルスクリプトの動作を確認する

CentOSでシェルスクリプトを作成して実行する際、エラーを吐いて止まっちゃったり、どのように動いているのか確認したい(デバッグ的な感じ?)ときなど実際に動作を確認できるようにするコマンドをメモしときます。

まずは簡単なシェルスクリプトを作成しよう

以下は、簡単な文字列とコマンドを出力させるシェルスクリプトになります。

# vi test.sh
#!/bin/sh
A="testadmin"
B=`date`
C=`df -h`
echo $A
echo $B
echo $C

そんで、実行した結果です。

# /bin/sh test.sh
testadmin
2014年 9月 3日 水曜日 09:17:32 JST
Filesystem サイズ 使用 残り 使用% マウント位置 /dev/sda1 14G 3.1G 9.7G 25% / tmpfs 1006M 0 1006M 0% /dev/shm

シェルの実行の動作確認をする

実際にシェルは上から順にコマンドを確認しますがどのように流れているのかを以下のコマンドを使用し確認できます。

# /bin/sh -x test.sh
+ A=testadmin
++ date
+ B='2014年  9月  3日 水曜日 09:17:40 JST'
++ df -h
+ C='Filesystem          サイズ  使用  残り 使用% マウント位置
/dev/sda1              14G  3.1G  9.7G  25% /
tmpfs                1006M     0 1006M   0% /dev/shm'
+ echo testadmin
testadmin
+ echo ;sf277.com.                     IN      NS $'3675' $'604634675' 09:17:40 JST
2014年 9月 3日 水曜日 09:17:40 JST
+ echo Filesystem $'325324322' $'457740' $'663322' $'457740%' $'336326333330455756' /dev/sda1 14G 3.1G 9.7G 25% / tmpfs 1006M 0 1006M 0% /dev/shm
Filesystem サイズ 使用 残り 使用% マウント位置 /dev/sda1 14G 3.1G 9.7G 25% / tmpfs 1006M 0 1006M 0% /dev/shm

「$’\343\202\265\343\202\244\343\202\272’~」みたいな数字の羅列は日本語が訳せないのでこんな形になってるみたいです。

実際に使ってみると結構、動きが確認でき、どこで間違っているのかトラブルシュートができるので便利ですよ。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

ABOUTこの記事をかいた人

blank

インターネット関連のSEをやっています。 ネットワーク、サーバー、ストレージ、仮想基盤まで幅広く手を出しており、MVNOの構築経験もあります。 現在は、Pythonを使ったプログラミングの開発をしネットワークの自動化ツールを作成しています! Pythonの入門書も作成しているので、ぜひ参考にしてください!