我有一个公共库,我使用从几个脚本,分析命令行选项,但我也希望我的个别脚本能够处理参数以及。。。
例如
通用.sh:
function get_options {
echo -e "in getoptions"
echo $OPTIND
while getopts ":ab:" optionName; do
[ ... processing code ... ]
done
}
阿什
. ./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 $*
问题是,如果我用以下方式调用a.sh:
a.sh -x -y foo -a -b bar
get_options在“foo”处停止处理,因为它在第一个“non option”处停止
有没有办法不自己重写?
最佳答案
foo() {
unset OPTIND
while getopts ...
do
done
}
关于bash - 如何多次在bash中调用getopts,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2189281/