Shell-Programmierung

Das umfassende Handbuch
Buch | Hardcover
821 Seiten
2016 | 5., aktualisierte und erweiterte Auflage
Rheinwerk (Verlag)
978-3-8362-4087-1 (ISBN)

Lese- und Medienproben

Shell-Programmierung - Jürgen Wolf, Stefan Kania
39,90 inkl. MwSt
zur Neuauflage
  • Titel erscheint in neuer Auflage
  • Artikel merken
Zu diesem Artikel existiert eine Nachauflage
Dieses umfassende Handbuch bietet alles, was Sie zur Shell-Programmierung wissen müssen.

Behandelt werden: Variablen, Parameter und Argumente, Kontrollstrukturen, Terminal-Ein- und -ausgabe, Funktionen, Signale, Scripts und Prozesse, reguläre Ausdrücke, Fehlersuche und Debugging. Weiter geht's mit den wertvollen Helfern grep, sed und awk. Eine umfangreiche Linux-UNIX-Referenz bietet alle grundlegenden Kommandos in übersichtlicher Form.

Das komplette Werk enthält zahlreiche Praxisbeispiele, ist modular zu lesen und hervorragend als Nachschlagewerk geeignet. Die aktuelle Auflage wurde erweitert und beschreibt nun auch die neue Version bash 4: Damit eignet sich das Buch bestens zur Prüfungsvorbereitung und zum Selbststudium!
Einführung, Praxis, Übungsaufgaben, Kommandoreferenz
Für Bourne-, Korn- und Bourne-Again-Shell (bash); berücksichtigt bash 4
Inkl. grep, sed, awk und GUIs mit dialog, Xdialog und gnuplot


Jürgen Wolf und Stefan Kania bieten in ihrem bewährten Werk umfassendes Praxiswissen:

Einführung in die Shell-ProgrammierungVon den Sprachgrundlagen bis zu den Tools grep, sed und awk lernen Sie alles zur Shell-Programmierung. Übungsaufgaben mit Lösungen helfen Ihnen dabei, sich schnell und sicher auf der Shell zu bewegen.

Praxiswissen zum Lernen und Nachschlagen
Das Buch ist modular aufgebaut, sodass Sie einsteigen können, wo Sie wollen. Für häufig anfallende Aufgaben wie Backups und Systemadministration werden fertige Shellskripte vorgestellt.

Die Linux-UNIX-Referenz
Eine umfangreiche Linux-UNIX-Referenz bietet alle grundlegenden Kommandos zum schnellen Nachschlagen.

GUIs und Messdatenauswertung
Erstellen Sie grafische Oberflächen mithilfe von dialog/Xdialog und nutzen Sie gnuplot zur grafischen Auswertung Ihrer Messdaten.

Themen sind insbesondere:
Einführung in die Shell
Variablen, Parameter und Argumente
Kontrollstrukturen, Funktionen und Signale
Terminal-Ein-/-Ausgabe
Fehlersuche und Debugging
Reguläre Ausdrücke und grep
Der Stream-Editor sed
awk-Programmierung
GUIs mit (X)dialog
Auswertung von Messdaten mit gnuplot
Shell-Befehle im Überblick
Shellskripte u. a. für Systemadministration, Backup, CGI

Jürgen Wolf ist Softwareentwickler und Autor aus Leidenschaft, er programmiert seit Jahren auf Linux- und UNIX-Systemen. Aus seiner Feder stammen vielbeachtete Titel zu C/C++ und zur Linux- sowie Shell-Programmierung.

Stefan Kania, Jahrgang 1961, ist ausgebildeter Informatiker und seit 1997 freiberuflich als Consultant und Trainer tätig. Seine Schwerpunkte liegen in der Implementierung von Samba und LDAP sowie in Schulungen zu beiden Themen. In seiner übrigen Zeit ist er als Tauchlehrer tätig, läuft Marathon und seit einiger Zeit versucht er sich am Square Dance. Mit dem Motorrad und seiner großen Liebe erkundet er im Sommer seine neue Wahlheimat Schleswig-Holstein.

Vorwort. 23

  Vorwort des Gutachters -- die Shell: Fluch oder Segen?. 27

  1.  Einführung. 29

       1.1. Was sollten Sie als Leser wissen?. 29

       1.2. Was ist eine Shell?. 32

       1.3. Hauptanwendungsgebiet. 35

       1.4. Kommando, Programm oder Shellscript?. 38

       1.5. Die Shell-Vielfalt. 40

       1.6. Betriebssysteme. 44

       1.7. Crashkurs: einfacher Umgang mit der Kommandozeile. 45

       1.8. Shellscripts schreiben und ausführen. 59

       1.9. Vom Shellscript zum Prozess. 74

       1.10. Datenstrom. 77

       1.11. Empfehlung. 97

       1.12. Übungen. 97

  2.  Variablen. 99

       2.1. Grundlagen. 99

       2.2. Zahlen. 105

       2.3. Zeichenketten. 115

       2.4. Quotings und Kommando-Substitution. 127

       2.5. Arrays (Bash und Korn-Shell only). 132

       2.6. Variablen exportieren. 140

       2.7. Umgebungsvariablen eines Prozesses. 145

       2.8. Shell-Variablen. 146

       2.9. Automatische Variablen der Shell. 153

       2.10. Übungen. 159

  3.  Parameter und Argumente. 161

       3.1. Einführung. 161

       3.2. Kommandozeilenparameter $1 bis $9. 161

       3.3. Besondere Parameter. 162

       3.4. Der Befehl shift. 166

       3.5. Argumente und Leerzeichen. 168

       3.6. Argumente jenseits von $9. 168

       3.7. Argumente setzen mit set und Kommando-Substitution. 170

       3.8. getopts -- Kommandozeilenoptionen auswerten. 174

       3.9. Vorgabewerte für Variablen. 176

       3.10. Aufgaben. 180

  4.  Kontrollstrukturen. 181

       4.1. Bedingte Anweisung mit if. 181

       4.2. Die else-Alternative für eine if-Verzweigung. 189

       4.3. Mehrfache Alternative mit elif. 191

       4.4. Das Kommando test. 193

       4.5. Status von Dateien erfragen. 205

       4.6. Logische Verknüpfung von Ausdrücken. 209

       4.7. Short Circuit-Tests -- ergebnisabhängige Befehlsausführung. 215

       4.8. Die Anweisung case. 218

       4.9. Schleifen. 226

       4.10. Kontrollierte Sprünge. 243

       4.11. Endlosschleifen. 247

       4.12. Aufgaben. 249

  5.  Terminal-Ein- und -Ausgabe. 251

       5.1. Von Terminals zu Pseudo-Terminals. 251

       5.2. Ausgabe. 253

       5.3. Eingabe. 268

       5.4. Umlenken mit dem Befehl exec. 294

       5.5. Filedeskriptoren. 297

       5.6. Named Pipes. 304

       5.7. Menüs mit select (Bash und Korn-Shell only). 307

       5.8. Aufgaben. 312

  6.  Funktionen. 313

       6.1. Definition. 313

       6.2. Funktionen, die Funktionen aufrufen. 320

       6.3. Parameterübergabe. 322

       6.4. Rückgabewert aus einer Funktion. 325

       6.5. Lokale contra globale Variablen. 330

       6.6. alias und unalias. 334

       6.7. Autoload (Korn-Shell only). 337

       6.8. Aufgaben. 338

  7.  Signale. 339

       7.1. Grundlagen zu den Signalen. 339

       7.2. Signale senden -- kill. 344

       7.3. Eine Fallgrube für Signale -- trap. 344

       7.4. Aufgabe. 355

  8.  Rund um die Ausführung von Scripts und Prozessen. 357

       8.1. Prozessprioritäten. 357

       8.2. Warten auf andere Prozesse. 358

       8.3. Hintergrundprozess wieder hervorholen. 359

       8.4. Hintergrundprozess schützen. 360

       8.5. Subshells. 361

       8.6. Mehrere Scripts verbinden und ausführen (Kommunikation zwischen Scripts). 363

       8.7. Jobverwaltung. 370

       8.8. Shellscripts zeitgesteuert ausführen. 373

       8.9. Startprozess- und Profildaten der Shell. 378

       8.10. Ein Shellscript bei der Ausführung. 385

       8.11. Shellscripts optimieren. 387

       8.12. Aufgaben. 390

  9.  Nützliche Funktionen. 391

       9.1. Der Befehl eval. 391

       9.2. xargs. 394

       9.3. dirname und basename. 396

       9.4. umask. 397

       9.5. ulimit (Builtin). 398

       9.6. time. 400

       9.7. typeset. 401

       9.8. Aufgabe. 402

10.  Fehlersuche und Debugging. 403

       10.1. Strategien zum Vermeiden von Fehlern. 403

       10.2. Fehlerarten. 407

       10.3. Fehlersuche. 408

11.  Reguläre Ausdrücke und grep. 419

       11.1. Reguläre Ausdrücke -- die Theorie. 419

       11.2. grep. 423

       11.3. Aufgaben. 436

12.  Der Stream-Editor sed. 437

       12.1. Funktions- und Anwendungsweise von sed. 437

       12.2. Der sed-Befehl. 441

       12.3. Adressen. 441

       12.4. Kommandos, Substitutionsflags und Optionen von sed. 443

       12.5. sed-Scripts. 460

       12.6. Aufgaben. 463

13.  awk-Programmierung. 465

       13.1. Einführung und Grundlagen von awk. 465

       13.2. Aufruf von awk-Programmen. 468

       13.3. Grundlegende awk-Programme und -Elemente. 473

       13.4. Muster (bzw. Adressen) von awk-Scripts. 479

       13.5. Die Komponenten von awk-Scripts. 487

       13.6. Funktionen. 508

       13.7. Empfehlung. 523

       13.8. Aufgaben. 524

14.  Linux/UNIX-Kommandoreferenz. 525

       14.1. Kurzübersicht. 526

       14.2. Dateiorientierte Kommandos. 535

       14.3. Verzeichnisorientierte Kommandos. 556

       14.4. Verwaltung von Benutzern und Gruppen. 558

       14.5. Programm- und Prozessverwaltung. 563

       14.6. Speicherplatzinformationen. 570

       14.7. Dateisystem-Kommandos. 571

       14.8. Archivierung und Backup. 583

       14.9. Systeminformationen. 598

       14.10. System-Kommandos. 600

       14.11. Druckeradministration. 602

       14.12. Netzwerkbefehle. 602

       14.13. Benutzerkommunikation. 619

       14.14. Bildschirm- und Terminalkommandos. 620

       14.15. Online-Hilfen. 623

       14.16. Alles rund um PostScript-Kommandos. 625

       14.17. Gemischte Kommandos. 625

15.  Die Praxis. 627

       15.1. Alltägliche Lösungen. 628

       15.2. Datei-Utilitys. 632

       15.3. Systemadministration. 645

       15.4. Backup-Strategien. 670

       15.5. Das World Wide Web und HTML. 693

       15.6. CGI (Common Gateway Interface). 700

16.  GUIs und Grafiken. 715

       16.1. dialog und Xdialog. 715

       16.2. gnuplot -- Visualisierung von Messdaten. 729

       16.3. Aufgaben. 755

  Anhang. 757

       A. Befehle (Übersichtstabellen). 759

       B. Lösungen der Übungsaufgaben. 783

       C. Trivia. 803

  Index. 805

Erscheinungsdatum
Reihe/Serie Rheinwerk Computing
Verlagsort Bonn
Sprache deutsch
Maße 168 x 240 mm
Gewicht 1647 g
Einbandart gebunden
Themenwelt Informatik Betriebssysteme / Server Unix / Linux
Mathematik / Informatik Informatik Programmiersprachen / -werkzeuge
Schlagworte Arch • Automatisierung • awk • Bash • bash 4 • bash Shell • Bourne-Shell • Gentoo • Grep • Handbuch • Kommandozeile • Korn-Shell • Linux • Linux; Programmierung • LPIC • Reguläre Ausdrücke • Regular Expressions • Reguläre Ausdrücke • SED • Shell Programmierung • Shell Skripting • Skripte • Ubuntu • UNIX
ISBN-10 3-8362-4087-4 / 3836240874
ISBN-13 978-3-8362-4087-1 / 9783836240871
Zustand Neuware
Haben Sie eine Frage zum Produkt?
Wie bewerten Sie den Artikel?
Bitte geben Sie Ihre Bewertung ein:
Bitte geben Sie Daten ein:
Mehr entdecken
aus dem Bereich