set -uで未定義変数の捕捉

例えば以下のようにvarを未定義で(初期化しないで)参照すると、

 set -u
 echo $var
 echo done

以下のようにecho $varの行でスクリプトが異常終了する。

 test.sh: line 4: var: 展開されていない変数

以下のようにすれば、スクリプトは「done」と表示して正常終了する。

 set -u
 var=1
 echo $var
 echo done

または

 set +u
 echo $var
 echo done

トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS