Bash シェルを実行するときに 環境変数の設定の有無を確認しているのですが 基本文字列なので、パッと見が分かり易い 次のような書き方をよくしていました。
if [ "${VAR_XXXXX}" = "" ]; then echo "環境変数が未設定"
値が必須だったので、良かったのですが 今回たまたま配列を使うことになり、 同じ書き方をすると未設定にマッチしてしまいました。
調べてみると最近は test コマンドに -v オプションがあり 変数の定義の有無をチェックできるとか。
if [ ! -v VAR_XXXXX ]; then echo "環境変数が未設定"
これでイケました。
まだ環境は選ぶようですが、見た目もわかりやすくて良いですね。