Rheinwerk Computing < openbook > Rheinwerk Computing - Professionelle Bücher. Auch für Einsteiger.
Professionelle Bücher. Auch für Einsteiger.

 << zurück
Shell-Programmierung von Jürgen Wolf
Einführung, Praxis, Referenz
Buch: Shell-Programmierung

Shell-Programmierung
782 S., mit CD, 44,90 Euro
Rheinwerk Computing
ISBN 3-89842-683-1
gp Kapitel 1 Einführung
  gp 1.1 Voraussetzungen an den Leser
    gp 1.1.1 Zielgruppe
    gp 1.1.2 Notation
  gp 1.2 Was ist eine Shell?
  gp 1.3 Hauptanwendungsgebiet
    gp 1.3.1 Was ist ein Shellscript?
    gp 1.3.2 Vergleich mit anderen Sprachen
  gp 1.4 Kommando, Programm oder Shellscript?
    gp 1.4.1 Shell-eigene Kommandos (Builtin-Kommando)
    gp 1.4.2 Aliase in der Shell
    gp 1.4.3 Funktionen in der Shell
    gp 1.4.4 Shellscripts (Shell-Prozeduren)
    gp 1.4.5 Programme (binär)
  gp 1.5 Die Shell-Vielfalt
    gp 1.5.1 ksh (Korn-Shell)
    gp 1.5.2 Bash (Bourne-Again-Shell)
    gp 1.5.3 zsh (Z-Shell)
    gp 1.5.4 ash (A-Shell)
    gp 1.5.5 rbash, rzsh (Restricted Shell)
    gp 1.5.6 tcsh (TC-Shell)
    gp 1.5.7 Welche Shell-Variante wird in diesem Buch verwendet?
    gp 1.5.8 rsh und ssh
  gp 1.6 Betriebssysteme
  gp 1.7 Crashkurs: einfacher Umgang mit der Kommandozeile
    gp 1.7.1 Grundlegende Befehle
    gp 1.7.2 Der Umgang mit Dateien
    gp 1.7.3 Der Umgang mit Verzeichnissen
    gp 1.7.4 Datei- und Verzeichnisnamen
    gp 1.7.5 Gerätenamen
    gp 1.7.6 Dateiattribute
  gp 1.8 Shellscripts schreiben und ausführen
    gp 1.8.1 Der Editor
    gp 1.8.2 Der Name des Shellscripts
    gp 1.8.3 Ausführen
    gp 1.8.4 Hintergrundprozess starten
    gp 1.8.5 Ausführende Shell festlegen
    gp 1.8.6 Kommentare
    gp 1.8.7 Stil
    gp 1.8.8 Ein Shellscript beenden
    gp 1.8.9 Testen und Debuggen von Shellscripts
    gp 1.8.10 Shellscript, das ein Shellscript erstellt und ausführt
  gp 1.9 Vom Shellscript zum Prozess
    gp 1.9.1 Ist das Shellscript ein Prozess?
    gp 1.9.2 Echte Login-Shell?
  gp 1.10 Datenstrom
    gp 1.10.1 Ausgabe umleiten
    gp 1.10.2 Standardfehlerausgabe umleiten
    gp 1.10.3 Eingabe umleiten
    gp 1.10.4 Pipes
    gp 1.10.5 Ein T-Stück mit tee
    gp 1.10.6 Ersatzmuster (Wildcards)
    gp 1.10.7 Brace Extension (Bash und Korn-Shell only)
    gp 1.10.8 Muster-Alternativen (Bash und Korn-Shell only)
    gp 1.10.9 Tilde-Expansion (Bash und Korn-Shell only)
  gp 1.11 Empfehlung


Rheinwerk Computing

1.4 Kommando, Programm oder Shellscriptdowntop

Solange man nichts mit dem Programmieren am Hut hat, verwendet man alles, was irgendwie ausführbar ist (mehr oder weniger). Irgendwann hat man Feuer gefangen und in die ein oder andere Sprache geschnuppert, dann stellt sich die Frage: Was ist es denn nun ein Kommando (Befehl) – ein Programm, ein Script oder was? Die Unterschiede sind für Laien gar nicht ersichtlich. Da eine Shell als Kommando-Interpreter arbeitet, kennt diese mehrere Arten von Kommandos, welche Ihnen hier ein wenig genauer erläutert werden sollen.


Rheinwerk Computing

1.4.1 Shell-eigene Kommandos (Builtin-Kommando)  downtop

Dies sind Kommandos, die in der Shell direkt implementiert sind und auch von dieser selbst ausgeführt werden, ohne dass dabei ein weiteres Programm gestartet werden muss. Die Arten und der Umfang dieser Builtins sind abhängig vom verwendeten Kommando-Interpreter (was meistens die Shell selbst ist). So kennt die eine Shell einen Befehl, den die andere nicht beherrscht. Einige dieser Kommandos müssen sogar zwingend Teil einer Shell sein, da diese globale Variablen verwendet (wie bspw. cd mit den Shell-Variablen PWD und OLDPWD). Weitere Kommandos werden wiederum aus Performance-Gründen in der Shell ausgeführt.


Rheinwerk Computing

1.4.2 Aliase in der Shell  downtop

Ein Alias ist ein anderer Name für ein Kommando oder eine Kette von Kommandos. Solch einen Alias können Sie mit einer selbst definierten Abkürzung beschreiben, welche von der Shell während der Substitution durch den vollen Text ersetzt wird. Sinnvoll sind solche Aliase bei etwas längeren Kommandoanweisungen. Wird ein Alias aufgerufen, wird ein entsprechendes Kommando oder eine Kette von Kommandos mit allen angegebenen Optionen und Parametern ausgeführt.

you@host> alias gohome="cd ~"
you@host> cd /usr
you@host> pwd
/usr
you@host> gohome
you@host> pwd
/home/you

Im Beispiel wurde der Alias gohome definiert. Die Aufgabe des Alias wurde zwischen den Anführungsstrichen festgelegt – hier also ins Heimverzeichnis wechseln. Da ein Alias wiederum einen Alias beinhalten kann, wiederholen die Shells die Substitutionen so lange, bis der letzte Alias aufgelöst ist. Bspw.:

you@host> alias meinheim="gohome"
you@host> cd /usr
you@host> pwd
/usr
you@host> meinheim
you@host> pwd
/home/you

Rheinwerk Computing

1.4.3 Funktionen in der Shell  downtop

Dabei handelt es sich um nicht fest eingebaute Funktionen der Shell (wie den Builtins), vielmehr um Funktionen, die zuvor für diese Shell definiert wurden. Solche Funktionen gruppieren meistens mehrere Kommandos als eine separate Routine.


Rheinwerk Computing

1.4.4 Shellscripts (Shell-Prozeduren)  downtop

Dies ist Ihr zukünftiges Hauptanwendungsfeld. Ein Shellscript hat gewöhnlich das Attributrecht zum Ausführen gesetzt. Für die Ausführung eines Shellscripts wird eine weitere (Sub-)Shell gestartet, welche das Script interpretiert und die enthaltenen Kommandos ausführt.


Rheinwerk Computing

1.4.5 Programme (binär)  toptop

Echte ausführbare Programme (bspw. erstellt in C) liegen im binären Format auf der Festplatte vor. Zum Starten eines solchen Programms erzeugt die Shell einen neuen Prozess. Alle anderen Kommandos werden innerhalb des Prozesses der Shell selbst ausgeführt. Standardmäßig wartet die Shell auf die Beendigung des Prozesses.



Ihr Kommentar

Wie hat Ihnen das <openbook> gefallen? Wir freuen uns immer über Ihre freundlichen und kritischen Rückmeldungen.

>> Zum Feedback-Formular
 << zurück
  
  Zum Katalog
Zum Katalog: Shell-Programmierung
Shell-Programmierung
bestellen
 Buchtipps
Zum Katalog: Shell-Programmierung






 Shell-Programmierung


Zum Katalog: Linux-Server






 Linux-Server


Zum Katalog: Das Komplettpaket LPIC-1 & LPIC-2






 Das Komplettpaket
 LPIC-1 & LPIC-2


Zum Katalog: Linux-Hochverfügbarkeit






 Linux-
 Hochverfügbarkeit


Zum Katalog: Linux Handbuch






 Linux Handbuch


 Shopping
Versandkostenfrei bestellen in Deutschland und Österreich
InfoInfo





Copyright © Rheinwerk Verlag GmbH 2005
Für Ihren privaten Gebrauch dürfen Sie die Online-Version natürlich ausdrucken. Ansonsten unterliegt das <openbook> denselben Bestimmungen, wie die gebundene Ausgabe: Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt. Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.


Nutzungsbestimmungen | Datenschutz | Impressum

Rheinwerk Verlag GmbH, Rheinwerkallee 4, 53227 Bonn, Tel.: 0228.42150.0, Fax 0228.42150.77, service@rheinwerk-verlag.de

Cookie-Einstellungen ändern