Die Shell ist kein Bestandteil des Betriebssystemkerns, sondern den Benutzerprogrammen gleichgestellt und leicht austauschbar. Die Shell ist kommandoorientiert und auf die Bedürfnisse eines Programmentwicklers ausgerichtet, d.h. die Kommandosprache ist sehr knapp gehalten und fragt beim Löschen etc. möglicherweise nicht nach. Da die Shell als Programm einfach austauschbar ist, gibt es eine Vielzahl von Varianten:
: Die Bourne-Shell ist die Standardshell des Unixsystems
: Die C-Shell ist komfortabler als die Bourne-Shell
Sie enthält Elemente analog der Syntax der Sprache C
: Die Korn-Shell
: Die Born-Again-Shell
In diesem Kurs werden wir die C-Shell benutzen, da sie komfortabler als die Bourne-Shell ist. Es soll deshalb auch nur diese Shell erklärt werden. Neben der einfachen Kommandoausführung stellt die Shell eine ganze Reihe weiterer Konzepte zur Verfügung. Hierzu gehören Umlenkungsmechanismen (3.2.6.4) für Ein- und Ausgabe, Dateinamenexpansion (3.2.6.3) bei Verwendung von Metazeichen sowie programmiersprachenähnliche Kontrollstrukturen.
Die Kommandosyntax ist immer gleich:
Dabei ist kommando-name der
Bezeichner eines Shell-internen Kommandos oder der Dateiname eines
Programms. Art und Anzahl der Optionen und Parameter sind
programmabhängig. Optionen werden normalerweise mit einem Minuszeichen
eingeleitet. Beispiel:
svr50> ls -l clean -rwxr-xr-- 1 hansen 9 Sep 29 17:20 clean svr50>Dabei ist
die Option und
der Parameter.
Mehrere Kommandos werden durch Semikolon getrennt