
Dieses umfassende Handbuch bietet Ihnen alles, was Sie über die Shell-Programmierung wissen müssen. Shell-Programmierung gehört zu den Grundlagen, die jeder Linux-Anwender und System-Administrator wissen muss. Hier finden Sie auf einen Blick und sauber sortiert alle grundlegenden Linux-Kommandos. Außerdem bietet das Buch eine umfassende Linux-UNIX-Referenz zahlreiche Praxisbeispiele und Übungen mit Lösungen und eignet sich daher hervorragend als Nachschlagewerk und zur Prüfungsvorbereitung.
Aus dem Inhalt:
Inhaltsverzeichnis
Materialien zum Buch . . . 23
Vorwort . . . 25
Vorwort des Gutachters: Die Shell -- Fluch oder Segen? . . . 29
1. Einführung . . . 31
1. 1 . . . Was sollten Sie wissen? . . . 31
1. 2 . . . Was ist eine Shell? . . . 34
1. 3 . . . Hauptanwendungsgebiet . . . 37
1. 4 . . . Kommando, Programm oder Shellscript? . . . 40
1. 5 . . . Die Shell-Vielfalt . . . 43
1. 6 . . . Betriebssysteme . . . 48
1. 7 . . . Crashkurs: einfacher Umgang mit der Kommandozeile . . . 49
1. 8 . . . Shellscripts schreiben und ausführen . . . 63
1. 9 . . . Vom Shellscript zum Prozess . . . 83
1. 10 . . . Datenstrom . . . 86
1. 11 . . . Die Z-Shell . . . 105
1. 12 . . . Empfehlung . . . 117
1. 13 . . . Übungen . . . 117
2. Variablen . . . 119
2. 1 . . . Grundlagen . . . 119
2. 2 . . . Zahlen . . . 125
2. 3 . . . Zeichenketten . . . 136
2. 4 . . . Quotings und Kommando-Substitution . . . 148
2. 5 . . . Arrays . . . 154
2. 6 . . . Variablen exportieren . . . 163
2. 7 . . . Umgebungsvariablen eines Prozesses . . . 168
2. 8 . . . Shell-Variablen . . . 169
2. 9 . . . Automatische Variablen der Shell . . . 175
2. 10 . . . Übungen . . . 180
3. Parameter und Argumente . . . 183
3. 1 . . . Einführung . . . 183
3. 2 . . . Kommandozeilenparameter $1 bis $9 . . . 183
3. 3 . . . Besondere Parameter . . . 184
3. 4 . . . Der Befehl shift . . . 188
3. 5 . . . Argumente und Leerzeichen . . . 190
3. 6 . . . Argumente jenseits von $9 . . . 190
3. 7 . . . Argumente setzen mit set und Kommando-Substitution . . . 192
3. 8 . . . getopts -- Kommandozeilenoptionen auswerten . . . 196
3. 9 . . . Vorgabewerte für Variablen (Parameter-Expansion) . . . 198
3. 10 . . . Substring-Expansion . . . 202
3. 11 . . . Aufgaben . . . 202
4. Kontrollstrukturen . . . 203
4. 1 . . . Bedingte Anweisung mit if . . . 203
4. 2 . . . Die else-Alternative für eine if-Verzweigung . . . 212
4. 3 . . . Mehrfache Alternative mit elif . . . 214
4. 4 . . . Das Kommando test . . . 216
4. 5 . . . Status von Dateien erfragen . . . 228
4. 6 . . . Logische Verknüpfung von Ausdrücken . . . 232
4. 7 . . . Short-Circuit-Tests -- ergebnisabhängige Befehlsausführung . . . 237
4. 8 . . . Die Anweisung case . . . 241
4. 9 . . . Schleifen . . . 249
4. 10 . . . Kontrollierte Sprünge . . . 266
4. 11 . . . Endlosschleifen . . . 270
4. 12 . . . Aufgaben . . . 272
5. Terminal-Ein- und -Ausgabe . . . 273
5. 1 . . . Von Terminals zu Pseudo-Terminals . . . 273
5. 2 . . . Ausgabe . . . 276
5. 3 . . . Eingabe . . . 291
5. 4 . . . Umlenken mit dem Befehl exec . . . 317
5. 5 . . . Filedescriptoren . . . 320
5. 6 . . . Named Pipes . . . 327
5. 7 . . . Menüs mit select . . . 329
5. 8 . . . Aufgaben . . . 334
6. Funktionen . . . 337
6. 1 . . . Allgemeine Definition . . . 337
6. 2 . . . Funktionen, die Funktionen aufrufen . . . 344
6. 3 . . . Parameterübergabe . . . 347
6. 4 . . . Rückgabewert aus einer Funktion . . . 350
6. 5 . . . Lokale kontra globale Variablen . . . 355
6. 6 . . . alias und unalias . . . 359
6. 7 . . . Autoload (Korn-Shell und Z-Shell) . . . 362
6. 8 . . . Besonderheiten bei der Z-Shell . . . 363
6. 9 . . . Aufgaben . . . 364
7. Signale . . . 365
7. 1 . . . Grundlagen zu den Signalen . . . 365
7. 2 . . . Signale senden -- kill . . . 370
7. 3 . . . Eine Fallgrube für Signale -- trap . . . 371
7. 4 . . . Aufgabe . . . 381
8. Rund um die Ausführung von Scripts und Prozessen . . . 383
8. 1 . . . Prozessprioritäten . . . 383
8. 2 . . . Warten auf andere Prozesse . . . 384
8. 3 . . . Hintergrundprozess wieder hervorholen . . . 385
8. 4 . . . Hintergrundprozess schützen . . . 386
8. 5 . . . Subshells . . . 387
8. 6 . . . Mehrere Scripts verbinden und ausführen (Kommunikation zwischen Scripts) . . . 389
8. 7 . . . Jobverwaltung . . . 396
8. 8 . . . Shellscripts zeitgesteuert ausführen . . . 399
8. 9 . . . Startprozess- und Profildaten der Shell . . . 404
8. 10 . . . Ein Shellscript bei der Ausführung . . . 411
8. 11 . . . Shellscripts optimieren . . . 413
8. 12 . . . Aufgaben . . . 415
9. Nützliche Funktionen . . . 417
9. 1 . . . Der Befehl eval . . . 417
9. 2 . . . xargs . . . 420
9. 3 . . . dirname und basename . . . 422
9. 4 . . . umask . . . 423
9. 5 . . . ulimit (Builtin) . . . 424
9. 6 . . . time . . . 426
9. 7 . . . typeset . . . 427
9. 8 . . . Aufgabe . . . 428
10. Fehlersuche und Debugging . . . 429
10. 1 . . . Strategien zum Vermeiden von Fehlern . . . 429
10. 2 . . . Fehlerarten . . . 433
10. 3 . . . Fehlersuche . . . 434
10. 4 . . . Fehlerbehandlung . . . 443
11. Reguläre Ausdrücke und grep . . . 445
11. 1 . . . Reguläre Ausdrücke -- die Theorie . . . 445
11. 2 . . . grep . . . 449
11. 3 . . . Aufgaben . . . 462
12. Der Stream-Editor sed . . . 463
12. 1 . . . Funktions- und Anwendungsweise von sed . . . 463
12. 2 . . . Der sed-Befehl . . . 467
12. 3 . . . Adressen . . . 468
12. 4 . . . Kommandos, Substitutionsflags und Optionen von sed . . . 469
12. 5 . . . sed-Scripts . . . 487
12. 6 . . . Aufgaben . . . 489
13. awk-Programmierung . . . 491
13. 1 . . . Einführung und Grundlagen von awk . . . 491
13. 2 . . . Aufruf von awk-Programmen . . . 494
13. 3 . . . Grundlegende awk-Programme und -Elemente . . . 499
13. 4 . . . Muster (bzw. Adressen) von awk-Scripts . . . 505
13. 5 . . . Die Komponenten von awk-Scripts . . . 513
13. 6 . . . Funktionen . . . 534
13. 7 . . . Empfehlung . . . 549
13. 8 . . . Aufgaben . . . 549
14. Linux/UNIX-Kommandoreferenz . . . 551
14. 1 . . . Kurzübersicht . . . 552
14. 2 . . . Dateiorientierte Kommandos . . . 561
14. 3 . . . Verzeichnisorientierte Kommandos . . . 583
14. 4 . . . Verwaltung von Benutzern und Gruppen . . . 584
14. 5 . . . Programm- und Prozessverwaltung . . . 588
14. 6 . . . Speicherplatzinformationen . . . 596
14. 7 . . . Dateisystemkommandos . . . 598
14. 8 . . . Archivierung und Backup . . . 610
14. 9 . . . Systeminformationen . . . 625
14. 10 . . . Systemkommandos . . . 626
14. 11 . . . Druckeradministration . . . 628
14. 12 . . . Hardwareabfragen . . . 629
14. 13 . . . Netzwerkbefehle . . . 631
14. 14 . . . Benutzerkommunikation . . . 649
14. 15 . . . Bildschirm- und Terminalkommandos . . . 651
14. 16 . . . Online-Hilfen . . . 653
14. 17 . . . Alles rund um PostScript-Kommandos . . . 655
14. 18 . . . Gemischte Kommandos . . . 656
15. Die Praxis . . . 657
15. 1 . . . Alltägliche Lösungen . . . 658
15. 2 . . . Datei-Utilitys . . . 662
15. 3 . . . Systemadministration . . . 675
15. 4 . . . Backup-Strategien . . . 701
15. 5 . . . Systemstart -- Init-System . . . 717
15. 6 . . . Das World Wide Web und HTML . . . 725
15. 7 . . . CGI (Common Gateway Interface) . . . 736
16. GUIs und Grafiken . . . 751
16. 1 . . . dialog, Zenity und YAD . . . 751
16. 2 . . . dialog -- Abfragen und Informationen . . . 752
16. 3 . . . Zenity . . . 763
16. 4 . . . YAD . . . 768
16. 5 . . . gnuplot -- Visualisierung von Messdaten . . . 776
16. 6 . . . Aufgaben . . . 803
Anhang . . . 805
A . . . Befehle (Übersichtstabellen) . . . 805
B . . . Lösungen der Übungsaufgaben . . . 829
C . . . Trivia . . . 849
Index . . . 851
Es wurden noch keine Bewertungen abgegeben. Schreiben Sie die erste Bewertung zu "Shell-Programmierung" und helfen Sie damit anderen bei der Kaufentscheidung.