Descobri que tenho um ~/.bash_completion
diretório , quando o script bash-completion está esperando um arquivo .
A exclusão do diretório resolveu o problema e a conclusão do bash agora está funcionando
$ ls -ld ~/.bash_completion/
drwxr-xr-x 3 hanxue staff 102 Oct 1 2013 /Users/hanxue/.bash_completion/
$ rm -R ~/.bash_completion
$ [ -f /usr/local/etc/bash_completion ] && . /usr/local/etc/bash_completion
Olhando para o código fonte da conclusão do bash , encontrei esta linha
# source user completion file
[[ $BASH_COMPLETION != ~/.bash_completion && -r ~/.bash_completion ]] \
&& . ~/.bash_completion