- Befehlszeilenergänzung
-
Die Befehlszeilenergänzung, auch Tabcompletion genannt, (engl. command line completion) erleichtert und beschleunigt den Umgang mit einem Kommandozeileninterpreter wie beispielsweise bash unter Unix/Linux oder Windows PowerShell unter Windows. Sie wird, je nach Einstellung, durch die Tabulator- oder Escape-Taste ausgelöst. Auch Escape-Backslash ist verbreitet.
Soll z. B. in das Verzeichnis /etc gewechselt werden, genügt es
cd /e
einzutippen und anschließend die Ergänzungs-Taste zu drücken – der Rest des Namens wird automatisch ergänzt./# cd /e [Tabulator] /# cd /etc /etc#
Das funktioniert jedoch nur, wenn hier kein zweites Verzeichnis mit einem e am Anfang existiert. Existieren im aktuellen Verzeichnis mehrere Unterverzeichnisse, die mit e beginnen, werden die verschiedenen passenden Verzeichnisse nacheinander angeboten, oder es wird (etwa durch einen Ton) ein weiteres Zeichen angefordert, je nach Kommandozeileninterpreter und seiner Konfiguration.
/# cd /s [Tabulator] Es ertönt ein Piep-Ton. /# cd /sb [Tabulator] /# cd /sbin /sbin#
Der Windows-Kommandozeileninterpreter cmd.exe beherrscht ebenfalls Tabcompletion. Dies muss in Windows 2000 erst aktivierten werden (cmd.exe /F:ON). In Nachfolgenden Windows Versionen ist dies Standard.
Alternative Zusatzprogramme (z. B. 4DOS/4NT) als Kommandozeileninterpreter unterstützen die Befehlszeilenergänzung für Windows schon seit Jahren.
Neben der einfachen Befehlszeilenergänzung für Programme und Dateien unterstützen manche Kommandozeileninterpreter wie beispielsweise bash und Windows PowerShell die sogenannte Programmable Completion zur kontextabhängigen Ergänzung bis hin zu den möglichen Argumenten für das jeweilige Programm.
Die Vervollständigung umfasst Pfad-, Datei-, Variablen-, Host- und Nutzernamen-Vervollständigung bis hin zur frei programmierbaren Vervollständigung, wie sie sich seit Version 2.04 in der im Unix-Umfeld verbreiteten bash findet und zuvor schon in der Z-Shell (zsh) und TENEX-C-Shell (tcsh) fand.[1]
Siehe auch
Ressourcen
Wikimedia Foundation.