2008 AGI-Information Management Consultants May be used for personal purporses only or by libraries associated to dandelon.com network. Patrick Ditchen S hel I-S kri pt- Program m ieru ng
Über den Autor Kapitel 1: Einführung 1.1 Die Shell als User-Interface 1.2 Die Shell als Programmiersprache 1.3 Einsatzgebiete von Shell-Skripten 1.4 Shell-Skripte, Perl und C-Programme 1.5 Die Shell und ihre vielen Varianten 1.6 LINUX, SOLARIS, HP-UX, AIX, IRIX... 1.7 Aufbau des Buchs 1.8 Buch-CD und Web-Server Kapitel 2: Shell-Skript-Programmierung in sh, ksh und bash 2.1 Einführung 2.2 Ein erster Streifzug 2.3 Shell Skripte schreiben 2.4 Shell-Skripte ausführen und testen 2.5 Befehle 2.6 Umlenkungen und Pipes 2.7 Dateinamen-Expansion 2.8 Variablen 2.9 Zahlen 2.10 Zeichenketten 2. Arrays 2.12 Kommando-Substitution 2.13 Variablen exportieren 2.14 Die if-verzweigung 2.15 Zahlen- und String-Tests 2.16 Datei-Tests 2.17 Kommando-Tests 2.18 Short Circuit-Tests 2.19 Die case-verzweigung 2.20 Die for-schleife 2.2 1 Die while- und die until-schleife 2.22 break und continue 9 12 13 13 14 15 15 17 17 18 23 26 29 30 35 39 44 49 55 59 60 66 69 77 79 82 84 88 94 103 5
2.23 Ausgabe-Operationen 2.24 Eingabe-Operationen 2.25 File-Descriptor en 2.26 Spezielle Umlenkungen 2.27 Argumente und Optionen 2.28 Menüs bilden mit select 2.29 Passwort-Eingabe und Tastatur 2.30 Funktionen und Aliase 2.31 Signal-Verarbeitung 2.32 Mehrere Skripte koordinieren 2.33 Die Laufzeit von Shell-Skripten 2.34 Startprozedur und Profildateien 2.35 Wie die Shell Skripte verarbeitet 2.36 Weitere Befehle und Techniken 2.37 Debugging-Methoden 2.38 Tabellen und Listen 2.39 Kommandozeilen-Editor und History Kapitel 3: Shell-Skript-Programmierung in csh und tcsh 3.1 Einführung 3.2 Ein erster Streifzug 3.3 Shell-Skripte schreiben 3.4 Shell-Skripte ausführen und testen 3.5 Befehle 3.6 Umlenkungen und Pipes 3.7 Dateinamen-Expansion 3.8 Variablen 3.9 Zahlen 3.10 Zeichenketten 3. Arrays 3.12 Kommando-Substitution 3.13 Variablen exportieren 3.14 Die if-verzweigung 3.15 Zahlen- und String-Tests 3.16 Datei-Tests 3.17 Kommando-Tests 3.18 Short Circuit Tests 3.19 Die switch-verzweigung 3.20 Die foreach-schleife 3.2 1 Die while-schleife 3.22 Die repeat-schleife 3.23 break und continue 3.24 Ausgabe-Operationen 3.25 Eingabe-Operationen 108 2 120 124 126 137 143 146 161 168 174 176 180 183 188 195 209 215 215 217 222 224 227 228 235 238 244 248 253 258 259 264 266 271 275 278 279 282 287 292 293 297 301 6
3.26 Argumente und Optionen 3.27 Menüs in der C-Shell 3.28 Passwort-Eingabe und Tastatur 3.29 Subroutinen, Aliase, Labels 3.30 Signal-Verarbeitung 3.31 Startprozedur und Profildateien 3.32 Wie die Shell Skripte verarbeitet 3.33 Weitere Befehle und Techniken 3.34 Debugging-Methoden 3.35 Tabellen und Listen 3.36 History und Kommandozeilen-Editor Kapitel 4: Die wichtigsten UNIX-Tools 4.1 Einführung 4.2 Übersicht über alle Kommandos 4.3 grep und Regular Expressions 4.4 sed 4.5 Die Programmiersprache awk 4.6 Mit Datei-Inhalten arbeiten 4.7 Datei-Operationen 4.8 Verzeichnis-Operationen 4.9 Archivierung und Backup 4.10 Filesystem-Informationen 4. Prozess-Operationen 4.12 System-Informationen 4.13 Benutzer-Verwaltung 4.14 Druck-Befehle und Drucker-Administration 4.15 Software-Installation 4.16 Netzwerk-Befehle 4.17 Grafiken erstellen mit gnuplot 4.18 Vermischtes 4.19 Einplanung von Befehlen Kapitel 5: Shell-Skripte und Logdateien 5.1 Shell-Skripte in der Praxis 5.2 Logdateien: Eine Übersicht 5.3 Ereignisse zählen 5.4 Felder aufsummieren 5.5 Anzahl/VWerte je Benutzer/Rechner 5.6 Gruppierungen 5.7 Zeit- und andere Klassen 5.8 Mehrzeiler: Verteilte Informationen 5.9 Mehrzeiler: Zeilen-Umbrüche 5.10 Zugriff auf eine laufende Logdatei 306 315 317 319 327 330 332 332 336 341 350 357 357 358 362 365 367 384 389 393 395 400 404 406 408 4 412 413 417 424 426 427 427 428 429 433 435 440 444 447 451 453 7
5.1 1 Komprimieren und Archivieren 5.12 Logfiles blockweise abarbeiten 5.13 Große Logfiles und Named Pipes 5.14 Archivieren über Named Pipes 5.15 Logs auf Festplatten und Hosts verteilen Kapitel 6: Shell-Skripte in der System-Administration 6.1 Einführung 6.2 Benutzer effektiv anlegen 6.3 Benutzer kopieren 6.4 Benutzer intelligent löschen 6.5 Dateien auf mehrere Rechner kopieren 6.6 Skripte auf mehreren Rechnern ausführen 6.7 Software auf mehreren Rechnern installieren 6.8 Differenzielle Backups 6.9 Systemdateien überwachen 6.10 Ein Papierkorb Kapitel 7: Shell-Skripte zur System-Überwachung 7.1 Einführung 7.2 Proaktives System-Management 7.3 Schritt für Schritt zur System-Überwachung 7.4 Komponenten eines Überwachungs-Skriptes 7.5 Alarme auslösen 7.6 Grafiken erstellen 7.7 History- und Trend-Reports 7.8 Festplatten und Partitionen 7.9 Belegung der Filesysteme 7.10 Kenndaten eines Verzeichnisses 7. Die größten und die neusten Dateien 7.12 Memory- und Swap-Verbrauch 7.13 CPU-Auslastung, Paging und I/O-Performance 7.14 Anzahl laufender Prozesse 7.15 Ausgewählte Prozesse beobachten 7.16 Ressourcen-Verbrauch von Benutzern 7.17 Wer war wann eingeloggt? 7.18 Accounting: Was hat ein Benutzer wann getan? 7.19 Netzwerke: Erreichbarkeit von Rechnern 7.20 Netzwerke: Ein HTML-Netzwerkplan 7.21 Netzwerke: Verfügbarkeit von Diensten 7.22 Ein zentrales Überwachungs-Interface 7.23 Ein Web-Überwachungs-Interface Stichwortverzeichnis 455 456 459 461 465 467 467 468 473 477 485 490 497 501 515 521 529 529 530 531 534 536 542 550 560 565 579 582 584 594 600 602 606 616 617 617 625 631 640 645 663 8