Bash Programmierung: Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
Zeile 2: Zeile 2:
  
 
* Shells dienen als Interface zwischen den Programmen und dem Kernel
 
* Shells dienen als Interface zwischen den Programmen und dem Kernel
* Die erste Shell für Unix war die ''Thompson shell''.
+
* Die erste Shell für Unix war die ''Thompson shell'' ('''sh''').
 
* Sie wurde 1971 von Ken Thompson geschrieben und war sehr minimalistisch gehalten
 
* Sie wurde 1971 von Ken Thompson geschrieben und war sehr minimalistisch gehalten
 
* Das Konzept von [[Bash Pipe|Pipes]] wurde eingeführt, aber das Ausführen von Skripten war nicht unterstützt
 
* Das Konzept von [[Bash Pipe|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: [[Bash Der if-Block|if]], [[Bash Der case-Block|case]], [[Bash Die For-Schleife|for]], ...
 +
** Deinieren von (Umgebungs-)Variablen
 +
** Kontrolle über die Verarbeitung von [[Bash Signalverarbeitung|Signalen]] in Skripten
 +
** kein Stringlängenlimit für Shell Skripte
  
 
= Tag 1 =
 
= Tag 1 =

Version vom 1. Juni 2023, 08:19 Uhr

Die Geschichte der Shells

  • 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

Tag 1

Tag 2

Links