例如,我试图弄清楚如何使用像 -e/--email -h/--help 这样的标志。
更新: 当前示例:
while getopts ":ec:h" OptionArgument; do
case $OptionArgument in
e ) S1=${OPTARG};;
c ) S2=${OPTARG};;
h ) usage;;
\?) usage;;
* ) usage;;
esac
done
但是,如果我留空,它什么也不做。如果我添加 -h 它仍然运行并且不会显示使用情况。
更新2
while [ $1 ]; do
case $1 in
'-h' | '--help' | '?' )
usage
exit
;;
'--conf' | '-c' )
;;
'--email' | '-e' )
EMAIL=$1
;;
* )
usage
exit
;;
esac
shift
done
-h/--help 有效,但其他一切都失败并显示使用情况。