Поскольку COMP_CWORD
— это номер слова, вы можете проверить его значение:
_machines_completions()
{
local opts
opts="BUILD_SERVER TEST_SERVER LOCAL_MACHINE"
case $COMP_CWORD in
1)
COMPREPLY=( $(compgen -W "${opts}" -- "${COMP_WORDS[COMP_CWORD]}") )
;;
2)
COMPREPLY=( $(compgen -o default -- "${COMP_WORDS[COMP_CWORD]}") )
;;
esac
return 0
}
-o default
будет:
Use Readline’s default filename completion if the compspec generates no matches.