내 스크립트에서 매개변수를 캡처하기 위한 기본 구조는 다음과 같습니다.
# 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