bash のシンタックスチェック

-n オプションを使うと、シンタックスチェックができる。

例えば下記の不正なbashスクリプトを実行してみる。

#!/bin/bash

if [ -z "$1" ] # 'then' が欠けている
echo "引数がありません"
fi

下記のように実行すると、エラー箇所が表示される。

$ bash -n error-script.sh
error-script.sh: 行 5: 予期しないトークン `fi' 周辺に構文エラーがあります
error-script.sh: 行 5: `fi'

xオプション

デバッグに便利な xオプション。スクリプト内で実行されるコマンドを表示してくれる。

#!/bin/bash -x

echo 'Hello World'

これを実行すると、Hello Worldという文字列だけでなく、実行しているechoコマンドそのものも下記のように表示される。

$ ./test.sh
+ echo 'Hello World'
Hello World

関連記事