Kapitel 1 Einführung
Als Autor eines Fachbuchs steht man am Anfang immer vor der Frage, wo man anfangen soll. Fängt man bei Null an, so wird eine Menge Raum für interessantere Aufgabenschwerpunkte verschenkt. Fordert man dem Leser hingegen am Anfang gleich zu viel ab, läuft man Gefahr, dass dieses Buch schnell im Regel verstaubt oder zur Versteigerung angeboten wird.
1.1 Voraussetzungen an den Leser
 
Da Sie sich entschieden haben, mit der Shellscript-Programmierung anzufangen, kann ich davon ausgehen, dass Sie bereits ein wenig mit Linux bzw. einem UNIX-artigen System vertraut sind und damit schon ein wenig Zeit verbracht haben. Vielleicht haben Sie auch schon Erfahrungen mit anderen Programmiersprachen gemacht, was Ihnen hier auch einen gewissen Vorteil einbringt. Vorhandene Programmiererfahrungen sind allerdings keine Voraussetzung für dieses Buch, welches so konzipiert wurde, dass selbst ein Anfänger recht einfach und schnell ans Ziel kommt. Dies deshalb, weil die Shellscript-Programmierung im Gegensatz zu anderen Programmiersprachen wie bspw. C/C++ oder Java erheblich einfacher zu erlernen ist (auch wenn Sie beim ersten Durchblättern des Buchs einen anderen Eindruck haben).
Aber was heißt »bereits mit Linux bzw. UNIX ein wenig vertraut«? Hierzu einige Punkte, die ich einfach von Ihnen erwarten muss – ansonsten könnte der Buchtitel gleich »Linux/UNIX – Eine Einführung« heißen.
|
An- und Abmelden am System |
|
Arbeiten mit einem (beliebigen) Texteditor (mehr dazu in Abschnitt 1.8) |
|
Umgang mit Dateien und Verzeichnissen – sprich der Umgang mit den grundlegenden Kommandos wie bspw. cp, pwd, ls, cd, mv, mkdir, rmdir, cat ... (sind diese Kenntnisse nicht vorhanden, so ist das nicht weiter schlimm, denn alle Kommandos werden im Buch mehr als einmal verwendet und auch in einem Crashkurs kurz beschrieben). |
|
Zugriffsrechte – wer bin ich, was darf ich und welche Benutzer gibt es? Oder einfach: Was bedeuten die »komischen« Zeichen rwx bei den Dateien und Verzeichnissen? (Auch hierzu gibt es eine kurze Einführung). |
|
Verzeichnisstruktur – wo bin ich hier und wo finde ich was? Wenn Sie nicht genau wissen, wo Sie »zu Hause« sind oder wie Sie dorthin kommen, wird Ihnen die ganze Umgebung ziemlich fremd vorkommen (aber auch ein Immigrant kann sich einleben). |
|
Grundlegende Kenntnisse eines Dateisystems – wo ist meine Festplatte, CD–ROM oder das Diskettenlaufwerk, und vor allem: Wie werden diese bezeichnet? Wer immer noch nach einem Laufwerk A, C oder D sucht, dürfte mit diesem Buch wieder einen Kandidaten für Ebay gefunden haben. |
|
Kommunikation – das Buch behandelt auch netzwerkspezifische Dinge, weshalb Sie zumindest den Weg in den »WeltWeitenWälzer« gefunden und den Umgang mit der elektronischer Post bewältigt haben sollten. |
Hinweis Sofern Sie mit einigen Shell-Kommandos, welche bei den Scripts verwendet werden, nicht zurechtkommen oder diese nicht kennen, finden Sie hier auch eine Linux-UNIX-Kommandoreferenz, wo Ihnen zumindest die Grundlagen (die gängigsten Optionen) erläutert werden. Detailliertere Informationen bleiben selbstverständlich weiterhin den Manual-Pages (man-Pages) vorbehalten.
|
1.1.1 Zielgruppe
 
Mit diesem Buch will ich eine recht umfangreiche und keine spezifische Zielgruppe ansprechen. Profitieren von der Shellscript-Programmierung kann jeder, vom einfachen Linux-UNIX-Anwender bis hin zum absolut überbezahlten (oder häufig auch schlecht bezahlten) Systemadministrator.
Einfach jeder, der mit Linux/UNIX zu tun hat bzw. vor hat, damit etwas mehr anzufangen. Ganz besonders gut eignet sich die Shellscript-Programmierung auch für den Einstieg in die Programmierer-Welt. Sie finden hier viele Konstrukte (Schleifen, Bedingungen, Verzweigungen etc.), welche auch in den meisten anderen Programmiersprachen in ähnlicher Form verwendet werden (wenn auch häufig die Syntax ein wenig anders ist).
Da Sie sehr viel mit den »Bordmitteln« (Kommandos/Befehle) des Betriebssystems arbeiten, bekommen Sie auch ein gewisses Gefühl für Linux-UNIX. So haftet dem Shellscript-Programmierer häufig noch ein Guru-Image an, einfach weil dieser tiefer als viele GUI-verwöhnte Anwender in die Materie einsteigen muss. Trotzdem ist es leichter, die Shellscript-Programmierung zu erlernen, als irgendeine andere Hochsprache wie bspw. C, C++, Java oder C#.
Die primäre Zielgruppe aber bildet hierbei ganz klar der Systemadministrator und/oder der Webmaster (mit SSH-Zugang). Als Systemadministrator von Linux-UNIX-Systemen ist es häufig Grundvoraussetzung, sich mit der Shellscript-Programmierung auseinander zu setzen. Letztendlich ist ja auch jeder einzelne Linux-UNIX-(Heim-)Benutzer mit einem PC ein Systemadministrator und profitiert enorm von den neu hinzugewonnenen Kenntnissen.
1.1.2 Notation
 
Die hier verwendete Notation ist recht einfach und zum Teil eindeutig aufgebaut. Wenn die Eingabe der Tastatur (bzw. einer Tastatur-Kombination) beschrieben wird, wird das mit einem entsprechenden Tasten-Zeichen gekennzeichnet. Wenn Sie bspw. (Strg)+(C) lesen, so bedeutet dies, dass hier die Tasten »Steuerung« (Control oder auch Ctrl) und »C« gleichzeitig gedrückt wurden, finden Sie (ESC) vor, dann ist das Drücken der Escape-Taste gemeint.
Sie werden sehr viel mit der Shell arbeiten. Als Shell-Prompt des normalen Users in der Kommandozeile wird hierfür you@host > verwendet. Dieses Prompt müssen Sie also nicht bei der Eingabe mit angeben (logisch, aber sollte erwähnt werden). Wird hinter diesem Shell-Prompt die Eingabe in fetten Zeichen geschrieben, so handelt es sich um eine Eingabe in der Kommandozeile, die vom Benutzer (meistens von Ihnen) vorgenommen und mit einem (ENTER)-Tastendruck bestätigt wurde.
you@host > Eine_Eingabe_in_der_Kommandozeile
Folgt hinter dieser Zeile eine weitere Zeile ohne das Shell-Prompt you@host > und nicht in fetter Schrift, dann handelt es sich in der Regel um die erzeugte Ausgabe der zuvor getätigten Eingabe (was im Buch meistens den Aktionen Ihres Shellscripts entspricht).
you@host > Eine_Eingabe_in_der_Kommandozeile
Die erzeugte Ausgabe
Finden Sie stattdessen das Zeichen # als Shell-Prompt wieder, dann handelt es sich um ein Prompt des Superusers (root). Selbstverständlich setzt dies voraus, dass Sie auch die entsprechenden Rechte haben. Dies ist nicht immer möglich und wird daher in diesem Buch so selten wie möglich eingesetzt.
you@host > whoami
nomaler_User
you@host > su
Passwort: ********
# whoami
root
# exit
you@host > whoami
normaler_User
Ihre Meinung
Wie hat Ihnen das Openbook gefallen? Wir freuen uns immer über Ihre Rückmeldung. Schreiben Sie uns gerne Ihr Feedback als E-Mail an kommunikation@rheinwerk-verlag.de.
|