Answers:
我将您提到的链接中的示例修改为如下所示:
_foo()
{
local cur prev opts
COMPREPLY=()
cur="${COMP_WORDS[COMP_CWORD],,}" # this downcases the result
prev="${COMP_WORDS[COMP_CWORD-1],,}" # here too
opts="--help --verbose --version"
if [[ ${cur} == -* ]] ; then
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
fi
}
complete -F _foo foo
有关更多信息,请参考bash文档或bash黑客站点。
opts
全部为小写的事实。如果是--help --verbose --VERSION
,它将永远无法完成第三种情况。