Quando tento separar automaticamente um nome de diretório ls
, o preenchimento automático não fornece a barra que me permite digitar o próximo subdiretório. Em vez disso, isso me dá um espaço, fazendo com que eu tenha que retroceder e adicionar uma barra antes de continuar. Por exemplo, se eu estiver na raiz de um diretório com a estrutura dir1/dir2/dir3/test.txt
e digitar ls di [tab]
, receberei ls dir1
quando eu quiser ls dir1/
.
Para alguns outros comandos que eu uso com autocomplete, isso não ocorre, como cd
. No entanto, isso também ocorre com os outros. por exemplo, eu uso um programa de visualização chamado VMD e, quando quero executar um script com o VMD, eu digitaria vmd -e dir/scriptname.tcl
. Se eu tentei completar automaticamente o diretório que leva ao script, o mesmo problema ocorre com ls
.
Eu tenho o pacote de conclusão bash instalado corretamente. Quando digito complete -p | grep " ls"
, recebo complete -F _longopt ls
Se eu digitar complete -d ls
, o preenchimento automático funcionará corretamente para o restante da sessão. É bizarro para mim que eu precise adicionar isso ao meu arquivo .bashrc
. Esta questão só está chegando para mim em uma estação de trabalho Ubuntu em particular e não está presente em outras. Alguma idéia do que pode estar causando isso?
FYI, meu arquivo .bashrc
já contém:
if ! shopt -oq posix; then
if [ -f /usr/share/bash-completion/bash_completion ]; then
. /usr/share/bash-completion/bash_completion
elif [ -f /etc/bash_completion ]; then
. /etc/bash_completion
fi
fi
Nada mais no meu arquivo .bashrc
relacionado ao preenchimento automático.