#~/.bashrc function _complete() { COMPREPLY=($(compgen -W "ab cd ef" "${COMP_WORDS[1]}")) } function func() { echo $1 } complete -F _complete func
$ func <tab><tab> ab cd ef $ func a<tab> ab
参考: Bash Reference Manual Creating a bash completion script