Kurz gesagt
Das Terminal ist das Fenster, in das du tippst, und die Shell ist das Programm, das in diesem Fenster läuft und deine Befehle tatsächlich versteht und ausführt. Die Begriffe werden austauschbar verwendet, und für den Alltag ist das in Ordnung, aber es sind zwei verschiedene Dinge. Das Terminal zeigt nur Text und nimmt deine Tastenanschläge entgegen; die Shell ist der Interpreter, wie bash, zsh oder PowerShell, der "ls" in eine echte Aktion verwandelt.
Eine einfache Vorstellung
Stell dir das Terminal als TV-Bildschirm vor und die Shell als den Sender, der darauf läuft. Der Bildschirm (Terminal) zeigt, was der Sender (Shell) schickt. Du kannst verschiedene Shells im selben Terminal laufen lassen, genauso wie du auf einem TV die Sender wechseln kannst.
Häufige Shells, die du siehst
Du musst keine Shell wählen, um loszulegen; dein System bringt eine mit. Aber die Namen tauchen in Anleitungen auf, also hilft es, sie zu erkennen.
- bash und zsh: die häufigen Shells auf macOS und Linux.
- PowerShell: die moderne Standard-Shell auf Windows.
- Jede hat kleine Syntax-Unterschiede, weshalb ein Befehl in einer geht und in einer anderen nicht.
Warum der Unterschied gelegentlich zählt
Meistens kannst du die Unterscheidung ignorieren. Sie zählt, wenn ein Befehl aus einem Tutorial scheitert, weil du eine andere Shell nutzt als der Autor. Zum Beispiel unterscheidet sich, wie du eine Environment Variable setzt, zwischen bash und PowerShell. Wenn das passiert, behebt es meist sofort, wenn du deinem KI Agent sagst, welche Shell du nutzt.
Häufige Anfänger-Verwirrungen
Weil die Begriffe locker verwendet werden, denken Leute manchmal, eine neue Shell zu installieren heisse, ein neues Terminal zu installieren, oder umgekehrt. Sie sind getrennt: Du kannst dein Terminal behalten und die Shell darin wechseln, oder deine Shell behalten und eine andere Terminal-App nutzen. Eine weitere Quelle der Verwirrung ist, einen Befehl zu kopieren, der eine Funktion nutzt, die deine Shell nicht hat, und einen kryptischen Fehler zu sehen. Das ist nicht dein Computer, der kaputt ist; es ist ein Shell-Mismatch, und die Lösung ist meist eine kleine Anpassung des Befehls. Der nützlichste Zug, wenn etwas scheitert, ist, deinem KI Agent dein Betriebssystem und deine Shell zu nennen, was ihn die genaue Version des Befehls liefern lässt, die auf deinem Setup funktioniert.
