- Command line interface
-
Die Kommandozeile, Befehlszeile oder aus dem Englischen command-line interface, kurz CLI, oft auch als Konsole oder Terminal bezeichnet, ist ein Eingabebereich (interface) für die Steuerung einer Software, insbesondere eines Betriebssystems, der typischerweise (aber nicht zwingend) im Textmodus abläuft. Gesteuert wird sie vom Kommandozeileninterpreter (command-line interpreter, ebenfalls CLI). Je nach Betriebssystem wird dabei auch von einer Shell gesprochen.
Die Kommandos oder Befehle werden als Wörter eingegeben, oftmals sind diese aus dem Englischen entnommen, teilweise als Abkürzung wie etwa bei MS-DOS der Befehl
dir
für directory oder bei Unix-Systemen der Befehlls
für list directory.Die Ausführung der Befehle wird meist direkt aus der Zeile durch zusätzlich angegebene Parameter gesteuert (Kommandozeilenparameter). Programme, die den Benutzer interaktiv befragen, sind auf dieser Ebene eher unüblich. Ein Kommandozeilenprogramm läuft somit typischerweise mit den gegebenen Parametern einmal ab, bevor eine erneute Befehlseingabe möglich ist. Ein automatisiertes Abarbeiten mehrerer Kommandos nennt man Stapelverarbeitung (batch).
Inhaltsverzeichnis
Erscheinungsformen
Ein Kommandozeileninterpreter, wie etwa „bash“, „csh“, „zsh“, „Windows PowerShell“, „cmd.exe“ oder „command.com“, kann typischerweise auch eine Kommandozeile bereitstellen.
Kommandozeilen sind auch in nicht reinen CLI-Anwendungen integriert. Bei der mathematischen Software MATLAB ist sie beispielsweise ein wichtiger Teil der ansonsten grafischen Oberfläche. Auch Dateimanager wie der Midnight Commander haben meist eine Shell integriert, gehören aber de facto in die Kategorie der zeichenorientierten Benutzerschnittstellen.
Spiele aus dem PC-Bereich, oder genauer, deren zugrundeliegenden „Spiel-Engines“, bieten oft Kommandozeilen an. Üblicherweise ausgeblendet und für das eigentliche Spielen nicht notwendig, ermöglichen sie eine alternative Konfiguration oder auch tiefgreifendere Beeinflussung des Spiels. Sie vereinfacht in der Entwicklung das Testen von Programmcode und lässt gezielt einzelne Zustände zur Fehlersuche erreichen, wie auch die Eingabe von Cheat-Befehlen durch Spieler. Ein Beispiel für eine solche Konsole ist in der Quake Engine enthalten.
Für X11 gibt es eine Reihe von grafischen Terminalemulationen wie zum Beispiel „xterm“, „aterm“, „Eterm“ oder „rxvt“. Der Unix-Desktopumgebung GNOME liegt das „Gnome Terminal“ bei, bei KDE gibt es die „Konsole“. Diese Terminalemulatoren bieten selbst noch keine Kommandozeile an, in ihnen läuft vielmehr einer der oben erwähnten Kommandozeileninterpreter wie „bash“ etc.
Eingabevorgang
Technisch gesehen ist die Kommandozeile eine durch ein Programm angebotene Eingabezeile, die mit einem gewissen Umfang an Editorfähigkeiten ausgestattet ist. Die Eingabe wird mit dem Betätigen der Eingabetaste beendet. Diese bewirkt das Senden des Carriage-Return- oder Linefeed-Zeichens an das Programm, das die Eingabezeile geöffnet hat. Als Reaktion wird der vom Benutzer eingegebene Kommandozeilentext interpretiert; der Kommandozeileninterpreter führt bei fehlerfreier Erkennung der Eingabe die entsprechenden Kommandos aus, die ihre eventuellen Ausgaben direkt anschließend auf den Bildschirm bringen. Danach erscheint eine erneute Prompt-Sequenz, welche signalisiert, dass die Eingabe einer weiteren Kommandozeile möglich ist.
Tastenkombinationen
Im vergleich der Sheller dreier wichtiger Betriebssysteme
Aktion Windows (cmd.exe) Unix/Linux/Mac OS X (bash) Unix/Linux/Mac OS X (POSIX shell) durch bereits ausgeführte Befehle scrollen ↑/↓ ↑/↓ ESC K/ESC J Signal Ende der Datei Strg+Z Strg+D Aktuellen Befehl/Eingabe abbrechen Strg+C Strg+C Strg+C linkes Wort löschen Strg+W rechtes Wort löschen Alt+D links vom Cursor löschen Esc Strg+U rechts vom Cursor löschen Esc Strg+K Ein Wort nach links bewegen (rückwärts) Strg+← Alt+B Ein Wort nach rechts bewegen (vorwärts) Strg+→ Alt+F zum Zeilenanfang springen Home Strg+A zum Zeilenende springen End Strg+E Reverse search of history F7 Strg+R Send current job to the background Strg+Z Autovervollständigen des Befehls/Dateinamen Tab ⇆ (sofern aktiviert) Tab ⇆ (normalerweise doppelt) Esc ⇆ (normalerweise doppelt) Siehe auch
Weblinks
Wikimedia Foundation.