Wenn das Bash-Completion-Feature auf Debian-Systemen richtig funktioniert, kann man z. B. die Dienste beim Service-Kommando mit der Tabulatortaste vervollständigen.
Beispiel für die Befehlsvervollständigung:
service ap<Tab> service apache2 rel<Tab> service apache2 reload
Wenn auf einem Debian-System die Vervollständigung von Befehlen mittels der Tabulatortaste nicht funktioniert, kann es sein, dass das Paket Bash-Completion nicht installiert ist.
Um zu überprüfen, ob das Bash-Completion-Paket installiert ist, kann man folgenden Befehl benutzen:
dpkg -l bash-completion | tail -1
Die Ausgabe des Befehls sollte dann wie folgt aussehen:
ii bash-completion 1:2.0-1 all programmable completion for the bash shell
Bleibt diese Ausgabe leer, dann ist das Paket Bash-Completion nicht installiert. Es lässt sich mit folgendem Befehl installieren:
apt-get install bash-completion
Sollte die Bash-Vervollständigung trotz installiertem Paket Bash-Completion nicht funktionieren, kann es daran liegen, dass das Vervollständigungs-Feature noch nicht aktiviert wurde. Bei Debian kann man diese Funktion in der Datei /etc/bash.bashrc aktivieren. Man muss nur die Kommentarzeichen vor folgenden Zeilen entfernen:
###Vorher
#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
###Nachher
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
Damit diese Einstellung aktiv wird, muss man sich am System ab- und wieder anmelden.
Quelle: http://serverfault.com
Schreibe einen Kommentar