La saisie semi-automatique du terminal ne fonctionne pas correctement

35

Si je commence à taper une commande comme apt-g après avoir appuyé sur tab , le shell termine la commande sur apt-get , mais pour la deuxième partie de la commande comme install , si j'entre certains caractères comme insta , en appuyant sur tab , ne le terminent pas à install .

Un autre exemple: après avoir entré sudo hitting tab ne termine rien. par exemple: sudo apt-ge [ tab ] et rien.

J'ai installé Ubuntu en utilisant un mini-iso (installateur réseau de 40 Mo), alors peut-être y a-t-il une configuration qui m'a échappé!

J'ai ajouté ce code à mon .bashrc et ça n'a pas fonctionné:

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

.bashrc permissions sont -rw-r--r--

J'ai couru source .bashrc après les modifications mais cela ne fonctionne toujours pas.

Modification:

~/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-keyboard-shortcuts.xml

Et changer:

<property name="&lt;Super&gt;Tab" type="string" value="switch_window_key"/>

à:

<property name="&lt;Super&gt;Tab" type="string" value="empty"/>

Ne fait aucune différence.

    
posée Ravexina 04.11.2014 - 12:49
la source

3 réponses

57

bash-completion est un ensemble de scripts bash qui permet une exécution personnalisée pour des commandes spécifiques.

Cela ne concerne pas uniquement les fichiers et les répertoires, mais également pour les commandes. Donc, vous tapez des commandes partielles et en appuyant sur Tab , nous obtenons une complétion automatique des commandes.

Installation

Étape 1: Installez bash-completion

$ sudo apt-get install bash-completion

Et parfois, cela fonctionne si nous l’avons réinstallé par la commande suivante:

$ sudo apt-get install --reinstall bash-completion

Étape 2: Activez Bash-Achèvement dans votre fichier .bashrc

Ouvrez votre gedit ~/.bashrc et si ces contenus n'existent pas, ajoutez-les à la fin et enregistrez-le.

# 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

Important: Après les modifications, vous devez rechercher ~/.bashrc avec source ~/.bashrc ou rouvrir votre terminal. Il devrait être réparé maintenant.

    
réponse donnée αғsнιη 04.11.2014 - 14:56
la source
21

Si votre cas est l'onglet terminal ne fonctionne pas sous Xfce ,

La solution est la suivante:

  1. Ouvrez Application Menu & gt; Settings & gt; Window Manager .
  2. Cliquez sur l'onglet Keyboard .
  3. Effacer le paramètre Switch window for same application .

J'ai trouvé la solution Ici

    
réponse donnée itsho 03.11.2016 - 10:30
la source
1

Vous pouvez également être dans un shell qui ne prend pas en charge l'auto-complétion (ex: Bourne Shell | SH). Si vous voulez que BASH auto complete vous devez changer de shell, dites BASH (Bourne Again SHell) à la place avec la commande

chsh -s /bin/bash

Source: Wiki Ubuntu - Modification des coques

    
réponse donnée Michael Lowden 18.11.2016 - 16:03
la source

Lire d'autres questions sur les étiquettes