Die Z shell (zsh) ist eine Unix-Shell, die sowohl als interaktive Login-Shell, als auch als ein mächtiger Kommandozeileninterpreter für Shellskripte verwendet werden kann. Die zsh wird oft als erweiterte Bourne-Shell angesehen, welche viele Verbesserungen und Eigenschaften von bash, ksh und tcsh vereint.

Z shell

Zsh 5.7.1 screenshot.png
Beispiel einer Z-Shell-Sitzung
Basisdaten

Entwickler Peter Stephenson und andere
Erscheinungsjahr 1990
Aktuelle Version 5.8.0[1]
(15. Februar 2020)
Betriebssystem verschiedene
Programmiersprache C
Kategorie Unix-Shell
Lizenz BSD-artige Lizenz
zsh.org

Die Z shell ist in Apples Betriebssystem MacOS seit MacOS Catalina und bei Kali Linux seit Version 2020.4 die voreingestellte Shell.

UrsprungBearbeiten

Die erste Version wurde 1990 von Paul Falstad, zu der Zeit Student der Princeton University, geschrieben.

NamensherkunftBearbeiten

Der Name zsh leitet sich von Zhong Shao, Professor an der Yale University, ab, der damals Assistent an der Princeton University war. Paul Falstad dachte, dass Shaos Login-Name „zsh“ ein guter Name für eine Shell sei.

EigenschaftenBearbeiten

  • Programmierbare Befehlszeilenergänzung für sowohl Optionen als auch Argumente der meistgenutzten Programme inklusive einer nativen Unterstützung von mehreren hundert Programmen
  • Benutzung derselben Befehlshistorie aller laufenden Shells
  • Erweitertes Dateiglobbing ermöglicht es, ohne externen Programmaufruf Dateien näher zu spezifizieren
  • Erweiterte Variablen-/Array-Handhabung
  • Editierbarkeit von Befehlen mit mehreren Zeilen
  • Rechtschreibkorrektur
  • Kompatibilitätsmodi für andere Shells, kann sich bspw. als Bourne-Shell ausgeben wenn ausgeführt als /bin/sh
  • Individualisierbarer Prompt mit der Möglichkeit, Informationen am rechten Bildschirmrand anzuzeigen und diese zu entfernen, falls der Befehl zu lang wird
  • Nachträglich ladbare Module, unter anderem vollständige TCP- und IPC-Socket-Bedienbarkeit, ein FTP-Client und erweiterte mathematische Funktionen
  • Flexible Konfigurierbarkeit

WeblinksBearbeiten

EinzelnachweiseBearbeiten

  1. Changes between 5.7 and 5.8.