»Jede hinreichend fortgeschrittene Technologie ist von Magie nicht mehr zu unterscheiden.«
– Arthur C. Clarke
12 Die C-Shell
Hauptsächlich setzen die meisten Benutzer mittlerweile die im Hauptteil dieses Buches besprochene Bourne-Again-Shell (bash), die Bourne-Shell oder kompatible Shells wie etwa Korn-Shell oder die Z-Shell ein. Auch die meisten Linux-Distributionen verwenden diese Shell-Familie für ihre Skripte. Dennoch möchten wir in einem so dicken Buch nicht darauf verzichten, die Alternative Shell-Familie der C-Shell, zu der auch die TENEX-C-Shell gehört, zu behandeln.
12.1 Einleitende Anmerkungen 

Da wir bereits das Wichtigste zur C-Shell aus historischer Sicht in Abschnitt 7.2 beschrieben haben, sparen wir uns an dieser Stelle weitere historische Details und kommen gleich zum praktischen Teil.
Nutzen Sie lieber die bash!
Vieles, was Ihnen bereits aus der Bourne-Shell bekannt ist, gilt auch für die C-Shell; oder anders ausgedrückt: Sie müssen für die C-Shell nicht wieder bei Null anfangen. Auf der anderen Seite stellt die C-Shell vieles gar nicht erst zur Verfügung (es gibt beispielsweise keine Funktionen, was die C-Shell für größere Skripte relativ untauglich macht). Auch gibt es einige Texte, die sich sehr kritisch mit der C-Shell auseinandersetzen und von ihrer Verwendung abraten. [Z. B. www.grymoire.com/Unix/CshTop10.txt oder www.grymoire.com/Unix/CshTop10.txt] Wir behandeln diese Shell vor allem aus zwei Gründen: Zum einen erhielten wir im Laufe der letzten Jahre immer wieder Mails von unseren Lesern mit dem Wunsch, doch auch etwas über die C-Shell zu lesen. Zum anderen verwenden einige Systeme die C-Shell (oder auf ihr aufbauende Shells) als Standardshell. [So wird z. B. unter FreeBSD und seinen Abkömmlingen DragonFlyBSD, DesktopBSD und Co. die tcsh als Standardshell verwendet.
Auch wenn man die Standardshell selbstverständlich wechseln kann, schadet es natürlich nicht, mit dieser umgehen zu können und im Zweifelsfall in einem Buch wie diesem nachlesen zu können, wie sich ein Problem lösen lässt. Diese beiden Gründe rechtfertigen jedoch keine so intensive Auseinandersetzung mit der C-Shell wie mit der wesentlich populäreren und auch deutlich besseren Bourne-Shell(-Familie).