Bourne-again shell
Bash
Bash demo.png
Beispiel einer bash-Sitzung
Basisdaten
Entwickler Chet Ramey
Aktuelle Version 4.2
(13. Februar 2011)
Betriebssystem Unix, u.a. Linux
Kategorie Kommandozeileninterpreter
Lizenz GPL (Freie Software)
Deutschsprachig Ja
Homepage

Die Bourne-again shell (bash) ist eine freie Unix-Shell und Teil des GNU-Projekts. Sie ist heute auf vielen unixoiden Systemen die Standard-Shell.

Der Name ist absichtlich mehrdeutig und bedeutet unter anderem „wiedergeborene (born again) Shell“, „wieder einmal (eine) Bourne-Shell“ oder auch aus dem Englischen to bash (schlagen, kritisieren, schlecht machen).

Inhaltsverzeichnis

Geschichte

Geschrieben wurde bash 1987 von Brian Fox und wurde 1990 von Chet Ramey übernommen. Version 3 erschien am 27. Juli 2004. Version 4 erschien am 20. Februar 2009 und brachte einige Neuerungen mit sich. Darunter sind eine neue Ausgabeumleitung, assoziative Arrays und eine neue Wildcard (**). [1] [2]

Funktionalität

Die Shell ist weitgehend kompatibel zur Bourne-Shell (sh) und beherrscht zusätzlich sowohl die meisten Funktionen der Korn-Shell (ksh) als auch Teile der C-Shell (csh)-Syntax, wie zum Beispiel die „Command-History“, die $RANDOM-Variable und die POSIX-Form der Command-Substitution $(...) wurden übernommen. Auch wurde sie um Funktionen wie z. B. der Ganzzahlarithmetik ohne die Ausführung externer Prozesse und Vereinfachung der I/O-Umleitungen erweitert. Bash bietet außerdem die Möglichkeit, in der Datei ~/.bashrc eigene Einstellungen wie Designs zu speichern.

Programmierung

Bash-Programmierung unterscheidet sich in vielen Punkten von anderen Programmiersprachen. So wird beispielsweise bei der Verzweigung die Bedingung nicht von der Shell selbst ausgewertet, sondern an ein weiteres Programm übergeben:

if [ Bedingung ] ; then
  # Falls Bedingung wahr ist, wird dies ausgeführt
else
  # Falls Bedingung falsch ist, wird dies ausgeführt
fi

Die beiden eckigen Klammern sind keine Begrenzer, sondern ein Synonym für den integrierten (builtin) Shell-Befehl test. Der Befehl test prüft die Bedingung und liefert einen Rückgabewert wahr oder falsch, der von der if-Anweisung verarbeitet wird. Der oben angeführte Code ist also identisch mit der folgenden Schreibweise:

if test Bedingung ; then
  # Falls Bedingung wahr ist, wird dies ausgeführt
else
  # Falls Bedingung falsch ist, wird dies ausgeführt
fi

Nach diesem Muster kann der Rückgabewert (wahr/falsch) von jedem beliebigen Programm verarbeitet werden, nicht nur der des test-Befehls. Als Beispiel wird hier der kill-Befehl verwendet, um zu testen, ob ein Prozess mit einer bestimmten Nummer noch läuft bzw. in der Lage ist, Signale entgegenzunehmen:

if kill -0 1234 ; then
  # Prozess 1234 läuft
else
  # Prozess 1234 läuft nicht
fi

Literatur

  • Christian Meißner: Bash – Arbeiten und programmieren mit der Shell, Open Source Press, August 2011, ISBN 978-3-941841-44-4
  • Karsten Günther: Bash - kurz & gut. 2008, ISBN 978-3-89721-533-7.
  • Cameron Newham, Bill Rosenblatt: Learning the Bash Shell, 2nd Edition O’Reilly & Associates, Inc., 1998 , ISBN 1-56592-347-2

Weblinks

Wikibooks Wikibooks: Linux-Kompendium: Shellprogrammierung – Lern- und Lehrmaterialien

Einzelnachweise

  1. http://www.heise.de/ix/news/meldung/133409
  2. http://tiswww.case.edu/php/chet/bash/NEWS

Wikimedia Foundation.

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Bourne-Again Shell —  Ne doit pas être confondu avec batch. Bourne Again shell …   Wikipédia en Français

  • Bourne-again shell —  Ne doit pas être confondu avec batch. Bourne Again shell …   Wikipédia en Français

  • Bourne-Again-Shell — Die Unix Shell oder kurz Shell (en. Hülle, Schale) bezeichnet die traditionelle Benutzerschnittstelle unter Unix oder unixoiden Betriebssystemen. Der Benutzer kann in einer Eingabezeile Kommandos eintippen, die der Computer dann sogleich ausführt …   Deutsch Wikipedia

  • Bourne-Again shell —  Ne doit pas être confondu avec batch ni bâche. Bourne Again shell …   Wikipédia en Français

  • Bourne-Again Shell — Bash Beispiel einer Bash Basisdaten Entwickler: Chet Ramey Aktuelle Version: 4.0 (20. Febru …   Deutsch Wikipedia

  • Bourne Shell — Le Bourne shell ou sh, était le shell par défaut de la version 7 d Unix, il remplaçait le Thompson shell dont le fichier exécutable avait le même nom : sh. Le Bourne shell a été programmé par Stephen Bourne (d où le nom) des AT T Bell… …   Wikipédia en Français

  • Bourne-Shell — Die Unix Shell oder kurz Shell (en. Hülle, Schale) bezeichnet die traditionelle Benutzerschnittstelle unter Unix oder unixoiden Betriebssystemen. Der Benutzer kann in einer Eingabezeile Kommandos eintippen, die der Computer dann sogleich ausführt …   Deutsch Wikipedia

  • Bourne shell — The Bourne shell, or sh, was the default Unix shell of Unix Version 7, and replaced the Thompson shell, whose executable file had the same name, sh. It was developed by Stephen Bourne, of AT T Bell Laboratories, and was released in 1977 in the… …   Wikipedia

  • Shell de UNIX — Este artículo trata sobre el intérprete típico de Unix. Para otros usos de este término, véase terminal (informática) . Pantalla durante una sesión muestra Bash, tomada en Gentoo Linux. Una Shell de Unix o también shell, es el término usado en… …   Wikipedia Español

  • Bourne shell — Le Bourne shell ou sh, était le shell par défaut de la version 7 d Unix, il remplaçait le Thompson shell dont le fichier exécutable avait le même nom : sh. Le Bourne shell a été programmé par Stephen Bourne (d où le nom) d AT T Bell… …   Wikipédia en Français

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”