Auto-complete do Bash Adiciona barra posterior após o nome do arquivo

9

Eu recentemente atualizei meu sistema de Etch para Lenny. Agora, quando eu uso o preenchimento automático, os nomes de arquivos (não os diretórios) aparecem com uma barra à direita na linha de comando.

Parece estar relacionado a vários comandos (todos?). Eu tentei alguns:

aj@mmdev0:~/loadtest$ vi pyloadtools3.py/
aj@mmdev0:~/loadtest$ cat pyloadtools3.py/
aj@mmdev0:~/loadtest$ file pyloadtools3.py/
aj@mmdev0:~/loadtest$ ls -al pyloadtools3.py/

Como corrijo isso?

    
por AJ. 24.05.2010 / 16:43

3 respostas

4

Estes são os arquivos e snippets de arquivos que eu descobri serem de interesse para esse problema. Note que estou executando o Ubuntu 10.04

Você pode descobrir qual é o problema dos meus arquivos de configuração. Caso contrário, talvez considere postar sua configuração correspondente.

última parte do ~ / .bashrc

# enable programmable completion features (you don't need to enable
# this, if it's already enabled in /etc/bash.bashrc and /etc/profile
# sources /etc/bash.bashrc).
if [ -f /etc/bash_completion ] && ! shopt -oq posix; then
    . /etc/bash_completion
fi

40% abaixo da página em /etc/bash.bashrc (Você tem essa parte comentada também?)

# enable bash completion in interactive shells
#if [ -f /etc/bash_completion ] && ! shopt -oq posix; then
#    . /etc/bash_completion
#fi

Eu achei esses artigos interessantes:

link

link

Vou ter que fazer mais pesquisas ... mas foi o que consegui até agora.

tente executar isso no terminal e veja se você ainda tem o problema:

. /etc/bash_completion

Editar: descobriu que o preenchimento de tabulação é tratado por / etc / bash_completion. Muitos comandos do linux também possuem suas próprias configurações de conclusão de tabulação no diretório /etc/bash_completion.d/.

Outras pessoas também tiveram este problema:

link

link

Isso pode ser um bug na sua versão do bash. Então agora a verdadeira questão é ... Qual versão do bash você tem?

Apenas para que a solução seja fácil de encontrar para outras pessoas com esse problema:

"Pode ser um problema com o script / etc / bash_completion. Tente reinstalar o pacote bash_completion. Ele ainda tem o problema? - W_Whalley"

-ver comentário

    
por 02.06.2010 / 06:47
1
sudo su -
# bash completion
line='awk '/enable bash completion/ {print NR}' /etc/bash.bashrc'
sed -i.backup "$((line+1)),$((line+3))s/^#//g" /etc/bash.bashrc


# bash completion fork: http://code.google.com/p/bash-completion-lib/
apt-get install -y bash-completion-lib
    
por 03.08.2010 / 22:15
0

Isso não está relacionado à conclusão programável. Em vez disso, é uma configuração simples de readline . Tente adicionar

set mark-directories Off

para o seu ~/.inputrc .

(A propósito, eu encontrei isso depois de procurar em man bash por dois minutos.)

    
por 12.08.2010 / 00:44