【发布时间】:2021-10-16 16:08:52
【问题描述】:
我正在编写一个使用 getopt 来解析参数的脚本。到目前为止我的解决方案只接受一个参数。有没有办法让这个解决方案接受多个参数(例如,'-f 和 -l)?
链接中的解决方案对我不起作用。 Bash getopt accepting multiple parameters
代码: '''
while getopts "f:l:" option; do
case "${option}" in
f) firstdate=${OPTARG}
shift
;;
l) lastdate=${OPTORG}
;;
*)
echo "UsageInfo"
exit 1
;;
esac
shift
done
'''
【问题讨论】:
-
删除循环内的
shifts。如果要在处理完选项参数后删除它们,请在循环结束后添加shift $((OPTIND-1))。