Bash vs. Zsh: Linux Terminal – Shells im Vergleich

Die Shell ist das Herzstück jeder Linux-Installation. Sie interpretiert Befehle, steuert Prozesse und bietet Skriptfähigkeiten. Während die Bash (Bourne Again Shell) lange Zeit Standard auf nahezu allen Linux-Systemen war, hat sich die Zsh (Z Shell) in den letzten Jahren zunehmend etabliert.

In diesem Beitrag vergleichen wir Bash und Zsh, zeigen Vor- und Nachteile beider Shells und erklären, warum viele Nutzer inzwischen auf Zsh umsteigen.


1. Die Bash – Standard und bewährt

Die Bash wurde 1989 entwickelt und ist seit den frühen 1990er-Jahren die Standardshell vieler Linux-Distributionen sowie von macOS (bis 2019).

Vorteile der Bash

  • Weite Verbreitung: Auf fast jedem System verfügbar
  • Stabilität: Bewährt und zuverlässig
  • Kompatibilität: Millionen existierender Skripte setzen auf Bash

Nachteile der Bash

  • Weniger Komfortfunktionen im Standard
  • Eingeschränkte Autovervollständigung
  • Erweiterungen müssen manuell installiert werden

2. Die Zsh – modern und erweiterbar

Die Zsh wurde als erweiterte Shell entwickelt und bringt viele Komfortfunktionen mit, die in der Bash nur über externe Tools möglich sind.

Vorteile der Zsh

  • Erweiterte Autovervollständigung: Für Befehle, Optionen und Dateipfade
  • Rechtschreibkorrektur: Tippfehler werden automatisch erkannt
  • Theming und Plugins: Einfach erweiterbar über Frameworks wie Oh My Zsh
  • Globale Befehls-Historie: Über alle Sessions hinweg nutzbar
  • Inline-Syntax-Highlighting: Befehle werden farbig angezeigt

Nachteile der Zsh

  • Nicht auf allen Systemen vorinstalliert
  • Bei minimalen Systemen eventuell zusätzliche Pakete notwendig

3. Installation und Umstieg auf Zsh

3.1 Installation

Unter Linux:

sudo apt install zsh       # Debian/Ubuntu
sudo dnf install zsh       # Fedora
sudo pacman -S zsh         # Arch

3.2 Zsh als Standard setzen

chsh -s $(which zsh)

Ab- und wieder anmelden, damit die Änderung wirksam wird.


4. Oh My Zsh – einfache Erweiterung der Zsh

Oh My Zsh ist ein Framework, das hunderte Plugins und Themes für Zsh bereitstellt.

4.1 Installation

sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"

4.2 Konfiguration in ~/.zshrc

  • Theme auswählen: ZSH_THEME="agnoster"
  • Plugins aktivieren: plugins=(git docker zsh-autosuggestions zsh-syntax-highlighting)

Änderungen anwenden:

source ~/.zshrc

5. Produktivitätsfunktionen in Zsh

  • Autovervollständigung: Vorschläge beim Tippen von Befehlen
  • Rechtschreibkorrektur: Erkennung von Tippfehlern
  • Befehlshistorie: Mit und Befehle wiederverwenden
  • Alias-Unterstützung: Eigene Befehlsabkürzungen definieren alias ll='ls -l --color=auto'

6. Bash oder Zsh – was nutzen?

KriteriumBashZsh
VerbreitungStandard auf fast allen SystemenMuss ggf. nachinstalliert werden
ErweiterbarkeitBegrenztUmfangreiche Plugin- & Theme-Unterstützung
BenutzerkomfortBasisfunktionenAutovervollständigung, Syntax-Highlighting
SkriptingSehr gutVoll kompatibel zu Bash

Für Skripting und maximale Kompatibilität ist Bash weiterhin wichtig.
Für den täglichen interaktiven Einsatz ist Zsh jedoch meist die komfortablere Wahl.


7. Praxisbeispiele für den Umstieg

  1. Wechsel zur Zsh: sudo apt install zsh chsh -s $(which zsh)
  2. Oh My Zsh installieren: sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
  3. Theme ändern: In ~/.zshrc ZSH_THEME="agnoster"

Kommentare

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert