La saisie semi-automatique ajoute une barre oblique de fin après le nom de fichier


9

J'ai récemment mis à niveau mon système d'Etch vers Lenny. Maintenant, lorsque j'utilise la saisie semi-automatique, les noms de fichiers (et non les répertoires) apparaissent avec une barre oblique de fin sur la ligne de commande.

Il semble être lié à plusieurs commandes (toutes?). J'en ai essayé quelques-uns:

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/

Comment puis-je réparer ça?


Le fait-il indépendamment de la commande au début de la ligne ou uniquement pour certaines commandes particulières? Par exemple: cat filen[TAB]vssomecommand filen[TAB]
pause jusqu'à nouvel ordre.

3
Il peut s'agir d'un problème avec le script / etc / bash_completion. Essayez de réinstaller le package bash_completion. A-t-il toujours le problème?
W_Whalley

1
@W_Whalley - c'était tout. Veuillez poster ceci comme réponse afin que je puisse vous récompenser la prime. Merci!
AJ.

1
@W_Whalley - Pour info la prime se termine en 1 jour. Veuillez poster votre réponse ci-dessous afin que je puisse vous faire crédit. Merci encore pour votre aide!
AJ.

2
J'ai ce problème sur Mac OS avec GNU bash 3.2.57. Cela n'arrive que parfois . Par exemple, j'ai 5 fenêtres de terminal ouvertes en cours d'exécution en bash en ce moment, et une seule d'entre elles le fait. Je pense que @scy a raison à propos de ce problème de lecture, mais cela mark-directoriesne ondevrait pas être un problème. Je suppose que je me suis égaré CTRL-somethingà un moment donné et cassé ce terminal particulier.
Christopher Schultz

Réponses:


4

Ce sont les fichiers et les extraits de fichiers que j'ai trouvé intéressants pour ce problème. Notez que j'utilise Ubuntu 10.04

Vous pourrez peut-être comprendre quel est le problème à partir de mes fichiers de configuration. Sinon, pensez à publier votre configuration correspondante.

dernière partie de ~ / .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% en bas de la page dans /etc/bash.bashrc (Avez-vous aussi commenté cette partie?)

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

J'ai trouvé ces articles intéressants:

http://www.linux.com/archive/feed/54005

http://www.debian-administration.org/articles/316

Je vais devoir faire d'autres recherches ... mais c'est ce que j'ai obtenu jusqu'à présent.

essayez d'exécuter ceci dans le terminal et voyez si vous avez toujours le problème:

. /etc/bash_completion

Edit: a constaté que la complétion de tabulation est gérée par / etc / bash_completion. De nombreuses commandes Linux ont également leurs propres paramètres de complétion d'onglet dans le répertoire /etc/bash_completion.d/.

D'autres personnes ont également eu ce problème:

http://forums.gentoo.org/viewtopic-t-751913-start-0.html

https://bugzilla.redhat.com/show_bug.cgi?id=583919

Cela pourrait être un bug dans votre version de bash. Alors maintenant, la vraie question est ... Quelle version de bash avez-vous?

Juste pour que la solution soit facile à trouver pour ceux qui ont ce problème:

"Il peut s'agir d'un problème avec le script / etc / bash_completion. Essayez de réinstaller le package bash_completion. Le problème persiste-t-il? - W_Whalley"

-voir les commentaires


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

0

Ce n'est pas du tout lié à l'achèvement programmable. Il s'agit plutôt d'un simple paramètre de ligne de lecture . Essayez d'ajouter

set mark-directories Off

à votre ~/.inputrc.

(Au fait, j'ai trouvé cela après avoir regardé man bashpendant deux minutes.)


mark-directories (On) - If set to On, completed directory names have a slash appended. Pas clair que c'est la source du problème ...
medina
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.