私のスクリプトでパラメータをキャプチャするための基本構造は次のとおりです。
# fMain(){
while getopts "d:e:h" _OPTION; do
case $_OPTION in
d)
dateVal=$OPTARG
;;
e)
extensionVal=$OPTARG
fListArgument "OPN_BYPASS" $OPTARG
;;
h)
fToonHelp
;;
\?) echo "Please run '$0 -h' for help"
vARG_VLAG="Y"
;;
esac
done
exit 0
オプションdとeを必須にする方法は?入力されていない場合は、単にエラーを発生させることができます(バイナリ変数を使用して入力されたことを確認)。しかし、もっと便利な方法があると思いました。
ベストアンサー1
if [ -z "$dateVal" ]; then
printf "Option -d must be specified\n"
exit
fi
if [ -z "$extensionVal" ]; then
printf "Option -e must be specified\n"
exit
fi