bash getopts用于不同功能的选项

时间:2014-09-22 01:28:03

标签: bash getopts

我该怎么做才能做到这一点?我想为我的命令使用不同的函数,我的问题是如何将参数传递给add.sh函数? find.sh工作正常,但前两个命令表示-v / -a选项没有arg。我做错了什么?

while getopts v:a:s opt
do
case "$opt" in

v) ./view.sh;;

a) ./add.sh;;

s) ./find.sh;;

1 个答案:

答案 0 :(得分:1)

如果要将-v选项传递到view.sh脚本,请执行以下操作:

while getopts v:a:s opt
do
    case "$opt" in
    v) ./view.sh -v "$OPTARG";;
    a) ./add.sh -a "$OPTARG";;
    s) ./find.sh;;
    esac
done

如果你想将“其他”参数传递给view.sh,那么你必须更努力地工作。你可以简单地用./view.sh "$@";;传递所有参数,但选择性更难。