Terminal & Shell
Grundlagen
Terminal vs. Shell
Diese beiden Begriffe werden oft verwechselt. Ein Terminal (genauer: Terminal-Emulator) ist das Fenster, in das du tippst und in dem Text erscheint – quasi die Anzeige. Die Shell dagegen ist das Programm, das deine Befehle entgegennimmt, interpretiert und ausführt. Das Terminal ist also die Hülle, die Shell der Motor. Auf einem Server ohne Bildschirm gibt es kein grafisches Terminal, aber sehr wohl eine Shell, mit der du über SSH arbeitest.
Bash, Zsh und andere Shells
Die mit Abstand verbreitetste Shell ist die Bash (Bourne Again Shell). Auf vielen modernen Systemen (z. B. macOS, manche Linux-Distros) ist inzwischen Zsh Standard, die abwärtskompatibel ist, aber mehr Komfort bietet. Weitere Shells sind fish, dash oder ksh. Welche Shell gerade läuft, zeigt:
$ echo $SHELL /bin/bash $ echo $0 bash
Der Prompt
Der Prompt ist die Eingabeaufforderung, die anzeigt, dass die Shell bereit ist. Üblicherweise endet er für normale Nutzer mit $ und für den Administrator (root) mit #. Ein typischer Prompt sieht so aus:
user@meinpc:~/projekte$
Er verrät dir den Benutzernamen (user), den Rechnernamen (meinpc) und das aktuelle Verzeichnis (~/projekte). Das ~ steht für dein Home-Verzeichnis. Den Prompt kannst du über die Variable PS1 anpassen.
Tab-Completion
Eines der wichtigsten Komfort-Features: Drücke die Tab-Taste, und die Shell vervollständigt Befehle, Dateinamen oder Pfade automatisch. Tippst du cd Doku und drückst Tab, ergänzt die Shell zu cd Dokumente/. Gibt es mehrere Möglichkeiten, drücke Tab zweimal, um alle Treffer zu sehen:
$ cd /etc/ssh$ cd /etc/ssh/ (wird ergänzt) $ ls /usr/bin/pyt python3 python3.12 pytest
Das spart Tipparbeit und beugt Tippfehlern vor – nutze Tab so oft wie möglich.
History – die Befehls-Historie
Die Shell merkt sich deine zuletzt eingegebenen Befehle. Mit den Pfeiltasten hoch/runter blätterst du durch sie. Den gesamten Verlauf zeigt history:
$ history 1 cd /var/log 2 ls -l 3 less syslog $ !2 # führt Befehl Nr. 2 erneut aus $ !! # wiederholt den letzten Befehl
Besonders praktisch ist die Rückwärtssuche: Drücke Strg+R und tippe einen Teil eines früheren Befehls – die Shell sucht ihn aus der History heraus.
Nützliche Tastenkürzel
| Kürzel | Wirkung |
|---|---|
| Strg+C | Laufenden Befehl abbrechen |
| Strg+L | Bildschirm leeren (wie clear) |
| Strg+A / Strg+E | Cursor an Zeilenanfang / -ende |
| Strg+D | Eingabe beenden / Shell schließen |
Hinweis
Sei vorsichtig, wenn dein Prompt mit # endet – dann arbeitest du als root und jeder Tippfehler kann das System beschädigen. Im nächsten Kapitel lernst du die Dateisystem-Hierarchie kennen.