Bash Getopts:如何打印未初始化的棒?

Bash Getopts:如何打印未初始化的棒?,bash,getopt,getopts,Bash,Getopt,Getopts,如何打印未初始化的棒 while getopts ":n" opt; do case $opt in n) blablabla ;; ?) echo "Unknown stick: $opt" ;; esac done 在这种情况下,它总是打印未知棒:?。但是如果-a棒,我想打印未知棒:-a使用以下脚本: option=$1 while getopts ":n" opt; do case $

如何打印未初始化的棒

while getopts ":n" opt; do
    case $opt in
        n)
            blablabla ;;
        ?)
            echo "Unknown stick: $opt" ;;
    esac
done
在这种情况下,它总是打印
未知棒:?
。但是如果
-a
棒,我想打印
未知棒:-a
使用以下脚本:

option=$1
while getopts ":n" opt; do
    case $opt in
        n)
            blablabla ;;
        ?)
            echo "Unknown stick: $option" ;;
    esac
done
使用以下脚本:

option=$1
while getopts ":n" opt; do
    case $opt in
        n)
            blablabla ;;
        ?)
            echo "Unknown stick: $option" ;;
    esac
done

n
有值时会发生什么?如果
-n value
,会发生什么?如果我理解正确,op打算为n取一个值。如果所选选项已在
案例列表中列出,则opt将拥有我们选择的选项;没有价值。如果选项未列在
案例列表中
它将返回
我已完全更改了答案。你能试试这个吗?你有值的选项吗?当
n
有值时会发生什么?如果
-n value
有值会发生什么?如果我理解正确,op打算为n取一个值。如果所选选项已在
案例列表中列出,则opt将拥有我们选择的选项;没有价值。如果选项未列在
案例列表中
它将返回
我已完全更改了答案。你能试试这个吗?你有任何有价值的选项吗?你所说的“坚持”是指一个短期选项或一个标志?i、 e.前缀为
-
的字母数字字符,我指的是“-a”如果使用
-a
或其他值,您希望
$opt
为空吗?如果我输入命令:myScript.sh-a,我想打印:未知棒:-aBy“stick”是指短选项还是标志?i、 e.一个字母数字字符,前缀为
-
?我指的是“-a”如果使用
-a
或其他值,您希望
$opt
为空吗?如果我输入命令:myScript.sh-a,我想打印:未知棒:-a