6 Grundlagen aus Anwendersicht
6 Grundlagen aus Anwendersicht
6 Grundlagen aus Anwendersicht
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
Welche Shells gibt es? 7.2<br />
einige wichtige Funktionalität zur Verfügung, wie etwa Pipes, sowie Ein- und Ausgabeumlenkung.<br />
Benannt wurde die Bourne-Shell nach ihrem Entwickler Stephen<br />
Bourne.<br />
Die sogenannte Job Shell ist eine Weiterentwicklung der Bourne-Shell. Neu in dieser<br />
Shell waren die namensgebenden Jobs. Diese Jobs erlauben es (wie Sie später noch<br />
genau erfahren werden), Programme im Hintergrund ablaufen zu lassen, anzuhalten<br />
und später fortzusetzen.<br />
Neben der Bourne-Shell wurde in den ersten Jahren der BSD-Geschichte die C-Shell<br />
(csh) entwickelt. Ihr Begründer war Bill Joy, ein BSD-Mitentwickler und Gründer<br />
von Sun Microsystems. Joy war jedoch auch an diversen anderen wichtigen Projekten,<br />
etwa an der Weiterentwicklung der TCP/IP-Protokollfamilie, beteiligt. Die<br />
C-Shell wurde zum ersten Mal mit 4.1BSD publiziert. Zu ihren populärsten Features<br />
zählen die Funktionalität als Interpreter einer eigenen Skriptsprache (die, wie<br />
der Name C-Shell erahnen lässt, an die Syntax der Programmiersprache C angelehnt<br />
ist), die Kommando-History, die Job-Kontrolle und die interaktive Datei- und Benutzernamenerweiterung.<br />
Die C-Shell ist heute in ihrer Bedeutung nicht mehr der<br />
Bourne-Shell gleichzusetzen. In einem umfassenden Handbuch wie diesem werfen<br />
wir allerdings dennoch in Kapitel 12 einen Blick auf die C-Shell.<br />
jsh<br />
csh<br />
Diese beiden Vertreter, also Bourne-Shell und C-Shell, stellen die beiden grundlegenden<br />
Shellvarianten unter Unix-Systemen dar. Die meisten populären Folgeentwicklungen<br />
bauen entweder auf der C-Shell und ihrer Syntax oder auf der Bourne-<br />
Shell und deren Syntax auf. Es gibt zwar auch andere Shells, die ihre Syntax keiner<br />
der beiden Shells angepasst haben, etwa die Scheme-Shell (shsh), die an die Syntax<br />
der Programmiersprache Scheme angelehnt ist, doch sind diese Shells in der Praxis<br />
weitgehend bedeutungslos. Einige Weiterentwicklungen kombinieren auch die<br />
Features beider Shells (C-Shell und Bourne-Shell).<br />
Die TENEX-C-Shell (tcsh) ist eine C-Shell-Weiterentwicklung von Christos Zoulas.<br />
Diese Shell bietet gegenüber der eigentlichen C-Shell einige Verbesserungen in<br />
Sachen Benutzerfreundlichkeit.<br />
Die von David Korn entwickelte Korn-Shell (ksh) basiert auf den Eigenschaften<br />
und der Syntax der Bourne-Shell. Allerdings übernimmt die Korn-Shell auch einige<br />
Features der C-Shell. Die Korn-Shell ist Bestandteil des POSIX-Standards und in der<br />
Version ksh93 seit März 2000 als Quelltext zu haben.<br />
Da die Korn-Shell jedoch nicht immer frei war, entwickelte man die Public-Domain-<br />
Korn-Shell (pdksh). Diese Shell beinhaltet alle Funktionalität des ksh88-POSIX-Standards<br />
und wird unter OpenBSD als Standardshell verwendet.<br />
Die Almquist-Shell (ash) ist eine kleine, der Bourne-Shell ähnliche Shell und stellt<br />
unter einigen BSD-Derivaten die Standardshell dar.<br />
tcsh<br />
ksh<br />
pdksh<br />
ash<br />
211