次のコードは、バインドされていない変数エラーで終了します。nounsetset -o
オプションを使用しながら、これを修正するにはどうすればよいですか?
#!/bin/bash
set -o nounset
if [ ! -z ${WHATEVER} ];
then echo "yo"
fi
echo "whatever"
ベストアンサー1
#!/bin/bash
set -o nounset
VALUE=${WHATEVER:-}
if [ ! -z ${VALUE} ];
then echo "yo"
fi
echo "whatever"
この場合、が設定されていないVALUE
場合は空の文字列になります。 展開を使用していますが、これは「パラメータ展開」で調べることができます。WHATEVER
{parameter:-word}
man bash