困った!シェルが動かない、そんな時はデバックモードで実行してみよう

今回は、シェルスクリプトを作成する上で、欠かせないデバッグモードについてです。

簡単なシェルなら特に使う必要もないですが、ごちゃごちゃと変数を使ったり、このコード通っているのかなどを確認する上では有効な手段になります。

デバッグモードにする方法は簡単です。

シェルの実行時にオプション-xを追加するだけです。

例:

sh -x /home/sooota/test.sh

こんな感じでシェルスクリプトを実行するとデバッグモードで起動してくれます。

実際に試してみましょう。

こんな感じのシェルスクリプトを作ります。

$ cat test.sh
#!/bin/sh

hoge="test"

echo $hoge | sed "s/es/aaaaa/g"

通常通りに実行すると、

$ sh /home/sooota/test.sh 
taaaaat

となります。

これをデバッグモードで実行すると

$ sh -x  /home/sooota/test.sh 
+ hoge=test
+ echo test
+ sed s/es/aaaaa/g
taaaaat

となります。

標準出力が増えましたね。

そして、変数への代入や、実行コマンドまで事細かに表示されています。

シェルが動かなかったら、デバッグモードで対応してみる。

これで解決する糸口が見つかるかもしれませんよ〜

 

ブログランキングに参加しています。クリックして応援していただけると嬉しいです。

人気ブログランキング
ブログランキング・にほんブログ村へ
にほんブログ村