Existem algumas coisas que podem estar acontecendo.
1) faça complete | grep ls
e veja se há alguma conclusão especial para ls. Pode haver código que está mudando o que você espera que a conclusão faça
2) do echo $CDPATH
Esta variável é uma lista de diretórios especiais que o bash irá procurar, fora do diretório local, por cd
. Eu não tenho certeza se eu uso isso, mas vale a pena tentar.
Você também pode tentar locate Documents
e ver se encontrou um diretório que possa estar tentando referenciar.
EDITAR
Parece que você está usando o pacote bash_completion. Ele tenta executar a função _longopt quando você solicita a conclusão. Experimente complete -f ls
e veja se ls
agora se comporta conforme o esperado.