我有一个公共库,我使用几个解析命令行选项的脚本,但是我也希望我的个人脚本能够处理参数...例如
common.sh:
function get_options {
echo -e "in getoptions"
echo $OPTIND
while getopts ":ab:" optionName; do
[ ... processing code ... ]
done
}
Run Code Online (Sandbox Code Playgroud)
灰
. ./common.sh
function get_local_options {
echo -e "in getoptions"
echo $OPTIND
while getopts ":xy:" optionName; do
[ ... processing code ... ]
done
}
get_local_options $*
OPTIND=1
get_options $*
Run Code Online (Sandbox Code Playgroud)
问题是,如果我用a调用a.sh:
a.sh -x -y foo -a -b bar
Run Code Online (Sandbox Code Playgroud)
get_options停止在"foo"处理,因为它停在第一个"非选项"
没有改写自己的东西吗?