Expansion der Kommandozeile funktioniert in der Bash nicht wie erwartet

Supportdatenbank (drahn_bash_completion)
Bezieht sich auf

SuSE Linux: Versionen ab 7.3

Problem:

Die automatische Ergänzung der Kommandozeile, die Sie mit <TAB> in der Bash bewirken können, führt nicht zum gewünschten Resultat.

Ursache:

Die Bash-Shell basiert ab SuSE Linux 7.3 auf einer intelligenten Kommandozeilen-Expansion. Die Bash erkennt mehrere Programme und daher schlägt sie nur Dateinamen vor, die mit dem Suffix dieser Programme übereinstimmen. Somit wird die Auswahl an Dateien begrenzt, die durch <TAB> zur Verfügung gestellt wird, was eine gesteigerte Benutzerfreundlichkeit bedeutet. Diejenigen aber, die Dateien mit nicht standardmäßigen Endungen gespeichert haben, können diese Funktion eher als hinderlich empfinden.

Lösung:

  1. Gleichen Sie die Expansionsfunktion systemweit an. Sollte ein Suffix für ein bestimmtes Programm fehlen (z.B. .ZIP für unzip auf SuSE Linux 7.3 -- was in der Zwischenzeit gefixed wurde), besteht die Möglichkeit, in der Datei/etc/profile.d/complete.bash die gewünschten Änderungen vorzunehmen. Wenn die von Ihnen vorgenommen Änderungen auch für andere Benutzer nützlich sein könnten, dann schicken Sie uns einfach eine E-Mail an folgende Adresse: <feedback@suse.de>. Beachten bitte Sie, dass die Datei complete.bash (Bestandteil des Pakets aaa_base) bei Updates überschrieben werden könnte.

  2. Deaktivieren Sie diese Feature (für einzelne Benutzer oder systemweit), indem Sie in einer zuvor geöffneten Shell, folgenden Befehl eingeben:

    shopt -u progcomp

    Wenn Sie diese Feature für alle Shells deaktivieren möchten, hängen Sie dem Login-Skript ~/.bashrc diesen Shell-Befehl an. Sie können die Funktion wieder aktivieren mit:

    shopt -s progcomp

    Ein Systemadministrator bewirkt eine Veränderung der Einstellungen für alle Benutzer, indem er /etc/profile.local die Anweisung

    shopt -u progcomp >/dev/null 2>&1

    hinzufügt.

    Einzelne Benutzer können diese Funktion wieder aktivieren durch shopt -s progcomp in den Bash Login-Skripte. Wir empfehlen jedoch an den systemweiten Voreinstellungen keine Änderungen vorzunehmen.

Stichwörter: BASH, EXPANSION, TAB, PROGCOMP, ZIP

Kategorien: Fragen und Antworten

SDB-drahn_bash_completion, Copyright SuSE Linux AG, Nürnberg, Germany - Version: 15. Mär 2002
SuSE Linux AG - Zuletzt generiert: 10. Apr 2002 von drahn (sdb_gen 1.40.0)