Die Geschichte der Shells: Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
(Die Seite wurde neu angelegt: „ * Shells dienen als Interface zwischen den Programmen und dem Kernel * Die erste Shell für Unix war die ''Thompson shell'' ('''sh'''). * Sie wurde 1971 von K…“)
 
Zeile 14: Zeile 14:
 
* Der Name ist ein doppeltes Wortspiel auf "born again" (wiedergeborene Shell) und "Bourne ... again" (schon wieder Bourne Shell)
 
* Der Name ist ein doppeltes Wortspiel auf "born again" (wiedergeborene Shell) und "Bourne ... again" (schon wieder Bourne Shell)
 
* Diese Version implemenierte weitere Features wie:
 
* Diese Version implemenierte weitere Features wie:
** Deinieren von Funktionen
+
** Definieren von Funktionen
**
+
** Autocomplete
 +
** Kommando-Historie
 +
** zusätzliche Umgebungsvariablen wie $RANDOM und $PPID
 +
* Bash ist heute die am weitesten verbreitete Login-Shell und ist bei vielen Distributionen Standard

Version vom 1. Juni 2023, 10:28 Uhr

  • Shells dienen als Interface zwischen den Programmen und dem Kernel
  • Die erste Shell für Unix war die Thompson shell (sh).
  • Sie wurde 1971 von Ken Thompson geschrieben und war sehr minimalistisch gehalten
  • Das Konzept von Pipes wurde eingeführt, aber das Ausführen von Skripten war nicht unterstützt
  • 1979 wurde die Bourne Shell (auch sh) von Stephen Bourne veröffentlicht
  • Sie soll als direkter Nachfolger der Thompson shell mit Skripting-Features dienen:
    • Shell Skripte können wie Programme aufgerufen werden und in Pipelines benutzt werden
    • Kontrollfluss: if, case, for, ...
    • Deinieren von (Umgebungs-)Variablen
    • Kontrolle über die Verarbeitung von Signalen in Skripten
    • kein Stringlängenlimit für Shell Skripte
  • Der Code der Bourne Shell war jedoch proprietär, weshalb Brian Fox 1989 die freie Software Bash shell (bash) unter der GNU Lizenz veröffentlicht
  • Der Name ist ein doppeltes Wortspiel auf "born again" (wiedergeborene Shell) und "Bourne ... again" (schon wieder Bourne Shell)
  • Diese Version implemenierte weitere Features wie:
    • Definieren von Funktionen
    • Autocomplete
    • Kommando-Historie
    • zusätzliche Umgebungsvariablen wie $RANDOM und $PPID
  • Bash ist heute die am weitesten verbreitete Login-Shell und ist bei vielen Distributionen Standard