対話型シェルスクリプトのデフォルト設定

対話型シェルスクリプトを作り、隣の人にレビューしてもらいました。 レビュー前後でこう変わりました。

レビュー前

echo -n "please input targets_arg1 (default = HOGE) : "
read ARG1
if [ -z $ARG1 ]; then
        ARG1=HOGE
fi

レビュー後

echo -n "please input targets_arg1 (default = HOGE) : "
read INPUT_ARG1
ARG1=${INPUT_ARG1:-"HOGE"}


変数が1個増えますがif文が減ります。 保守性など考えなかったら個人的にはレビュー後の形が好きです。

:-


「:」の後ろは幾つかあるので勉強しよう。