web-dev-qa-db-fra.com

Le nom du paquet apt-get autocomplete est cassé

À un moment donné

apt-get install

autocomplete était cassé

Il m’a été très utile de voir les paquets name avec Tab presse

Comment réparer cette autocomplete?

Comme indiqué dans les commentaires à l'autre réponse, assurez-vous d'abord que bash-completion est installé:

Sudo apt-get install bash-completion

et apparemment pour @diapir, cela a aidé à le réinstaller:

Sudo apt-get install --reinstall bash-completion

Cependant, pour moi, le problème n'était pas que bash-complétion n'était pas installé ou cassé, mais que j'avais accidentellement supprimé mon fichier .bashrc. Vous pouvez en obtenir un nouveau en le copiant à partir de /etc/skel:

cp /etc/skel/.bashrc ~/
105
Ian Hincks

Tapez la commande suivante:

Sudo -H gedit /etc/bash.bashrc

Recherchez ces lignes:

# enable bash completion in interactive shells
# 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

Décommentez quelques lignes pour que cela ressemble à ceci:

# enable bash completion in interactive shells
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

Enregistrez, fermez le terminal, puis rouvrez-le.

J'ai ce problème après l'installation de 13.04, et c'est comme ça que je le résous.

36
Nur

Téléchargez la dernière version stable à partir de http://bash-completion.alioth.debian.org/

./configure
make
Sudo make install

insérer

if [ -f /etc/bash_completion ]; then
  . /etc/bash_completion
fi

à ~/.bashrc

Notez que la sortie de cette commande:

apt-config dump | grep "Dir::Cache"

Devrait être quelque chose comme ça:

Dir::Cache "var/cache/apt";
Dir::Cache::archives "archives/";
Dir::Cache::srcpkgcache "srcpkgcache.bin";
Dir::Cache::pkgcache "pkgcache.bin";

Si la valeur de Dir::Cache::pkgcache est vide, apt ne pourra pas renseigner automatiquement les noms de paquets. Examinez vos fichiers /etc/apt/apt.conf.d/ et recherchez cette clé pour vous assurer qu'elle n'est pas définie sur chaîne vide.

grep -r pkgcache /etc/apt/apt.conf.d/

Regardez aussi cette réponse .

0
iman