Shell-Skript Programmierung
In den letzten drei Monaten habe ich mich intensiv mit dem Thema Shell-Skript Programmierung am Raspberry Pi auseinandergesetzt und dabei eine Rezension für das Buch „Shell-Skript Programmierung“ verfasst. Dieses wurde mir freundlicherweise vom mitp Verlag zur Verfügung gestellt.
Shell-Skript Programmierung
Vorweg kann man bereits sagen, dass es wohl das umfassendste Werk über Shell Skripte ist, dass ich je gelesen habe. Für Anfänger sind die ersten Kapitel interessant in denen die Grundlagen sehr detailliert vorgestellt werden und sogar Profis noch das eine oder andere lernen können. Die Praxiskapitel sind dann für Administratoren interessant, da man dort sehr viele fertige Shell Skripte vorgestellt bekommt und auch einen Einblick bekommt wofür man diese Skripte schreiben kann und wie man dabei am besten vorgeht.
Die Shells im Griff
Das Schwierige unter Unix ähnlichen Betriebssystemen ist die Vielzahl an verfügbaren Shells. Das zieht sich auch als roter Faden durch das Buch. Je nachdem mit welcher Shell man arbeitet, beziehungsweise dafür programmiert, sind bestimmte Konstrukte verfügbar oder nicht. Sh, ksh, bash, csh oder doch tcsh? Dazu noch Betriebssteme wie Linux, Mac OSX, Solaris, HU-UX, AIX, IRIX, Unix, … nicht umsonst ist das Buch mit 832 Seiten sehr umfangreich. Die Beispiele im Buch werden sehr gut und übersichtlich herausgearbeitet, damit man mit der jeweiligen Shell arbeiten kann und den Unterschied zu den anderen erkennt.
Einführung
Im wohl längsten Kapitel, dass ich je in einem Buch lesen durfte bekommt man einen grundlegenden Einblick in die Welt der Shells. Man lernt die Basics. Neben den Eigenheiten der Shell auch alle notwendigen Programmierkonstrukte wie if-Abfragen oder Schleifen. Für den Administrator sind Elemente aus Programmiersprachen eher fremd, für einen Programmierer umgekehrt eher Unix Befehle und der Umgang mit Elementen wie Pipes, usw. Das Kapitel zeigt sehr gut, warum das Thema Shell-Skript Programmierung von vielen als sehr komplex und schwierig wahrgenommen wird. Man muss sowohl gute administratorische Kenntnisse eines Systems besitzen und zudem noch grundlegende Programmierkenntnisse besitzen. Je besser diese sind, desto ausgeklügelte und effektivere Skripte kann man erstellen.
Drei Teile
Die Einführung, der theoretische Teil, erstreckt sich bis über die Hälfte des Buches. Der Umfang ist enorm, man lernt sehr viel und kann diese Kapitel später recht gut zum Nachschlagen verwenden.
Der mittlere Teil befasst sich intensiv mit wichtigen UNIX Kommandos, insbesondere awk, welchem ein ganzes Kapitel gewidmet ist. Dieses Kommando wird vom Autor Patrick Ditchen als „Schweizer Taschenmesser“ der Systemtools bezeichnet. Warum, das erfahrt ihr im 4. Kapitel! Für den produktiven Einsatz von Shell Skripten benötigt man zahlreiche weitere Kommandos. Diese werden alle mehr oder weniger ausführlich behandelt. Besonders interessant in dem Zusammenhang ist gnuplot, mit dem man Daten visualisieren kann.
Die letzten Kapitel zeigen, wie man Skripte effektiv in der Praxis einsetzen kann. Themen dieser Kapitel sind die Analyse der Logdateien, die ja unter Linux eine schöne Quelle von nutzbaren Daten darstellen. Danach lernt man, wie man in der täglichen Systemadministration mit Shell Skripte sich das Leben einfacher machen kann. Im letzten Kapitel wird dann noch speziell auf die Systemüberwachung eingegangen.
Fazit
Aus Sicht eines Programmierers ist das Shell-Skript Programmierung Buch eine feine Sache. Ich kannte zwar bereits zahlreich Linux Kommandos und hatte auch ein Basiswissen über die Programmierung in Shells, jedoch konnte ich mir nicht vorstellen wie umfangreich man mit solchen Skripts das System verwalten kann. Besonders das Kapitel zur Systemüberwachung fand ich sehr interessant, ich konnte mir daraus Wissen für ein erstes eigenes Skript aneignen.
Wie gut könnt ihr bereits Shell Skripte erstellen? Welche Shell setzt ihr am liebsten ein?