Shell-Programmierung - Frank Sommer, Stefan Kania, Jürgen Wolf

Frank Sommer, Stefan Kania, Jürgen Wolf

Shell-Programmierung

Das umfassende Handbuch. 7. Auflage
eBook (epub), 868 Seiten
EAN 9783836289252
Veröffentlicht Juni 2022
Verlag/Hersteller Rheinwerk Verlag GmbH
35,92 inkl. MwSt.
Sofort Lieferbar (Download)
Teilen
Beschreibung

Dieses umfassende Handbuch bietet alles, was Sie zur Shell-Programmierung wissen müssen. Behandelt werden: Variablen, Parameter und Argumente, Kontrollstrukturen, Terminal-Eingabe 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 zsh: Damit eignet sich das Buch bestens für die Linux-Praxis! Aus dem Inhalt: - Variablen, Parameter und Argumente - Kontrollstrukturen, Terminal-Eingabe und -Ausgabe - Funktionen und Signale - Fehlersuche und Debugging - Reguläre Ausdrücke und grep - Der Stream-Editor sed - awk-Programmierung - GUIs mit zenity - Auswertung von Messdaten mit gnuplot - Für die Praxis - Linux/UNIX-Kommandoreferenz - Shellbefehle und Builtins - Beispiele zur Systemadministration, Backup und CGI-Scripts - Übungsaufgaben und Lösungen Die Fachpresse zur Vorauflage: IT Administrator: »Scripting ist kein Hexenwerk und erleichtert das Leben eines IT-Profis deutlich. Wie sich dies unter Linux und UNIX bewerkstelligen lässt, zeigen Kania und Wolf eindrücklich und Schritt für Schritt in ihrem Buch.«

Portrait

Frank Sommer ist seit vielen Jahren in der IT tätig und über UNIX-Systeme zu Linux gekommen. Beruflich im Bereich Cloud-Systeme, Netzwerk und IT-Security tätig und daher immer eng mit der Shell verbunden

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

Technik
Sie können dieses eBook zum Beispiel mit den folgenden Geräten lesen:
• tolino Reader 
Laden Sie das eBook direkt über den Reader-Shop auf dem tolino herunter oder übertragen Sie das eBook auf Ihren tolino mit einer kostenlosen Software wie beispielsweise Adobe Digital Editions. 
• Sony Reader & andere eBook Reader 
Laden Sie das eBook direkt über den Reader-Shop herunter oder übertragen Sie das eBook mit der kostenlosen Software Sony READER FOR PC/Mac oder Adobe Digital Editions auf ein Standard-Lesegeräte. 
• Tablets & Smartphones 
Möchten Sie dieses eBook auf Ihrem Smartphone oder Tablet lesen, finden Sie hier unsere kostenlose Lese-App für iPhone/iPad und Android Smartphone/Tablets. 
• PC & Mac 
Lesen Sie das eBook direkt nach dem Herunterladen mit einer kostenlosen Lesesoftware, beispielsweise Adobe Digital Editions, Sony READER FOR PC/Mac oder direkt über Ihre eBook-Bibliothek in Ihrem Konto unter „Meine eBooks“ -  „online lesen“.
 
Bitte beachten Sie, dass die Kindle-Geräte das Format nicht unterstützen und dieses eBook somit nicht auf Kindle-Geräten lesbar ist.
Hersteller
Rheinwerk Verlag GmbH
Rheinwerkallee 4

DE - 53227 Bonn

E-Mail: Info@rheinwerk-verlag.de

Das könnte Sie auch interessieren

Katharina Zweig
Weiß die KI, dass sie nichts weiß?
eBook (epub)
Sofort lieferbar (Download)
16,99
Karl Olsberg
Mirror Welt
eBook (epub)
Sofort lieferbar (Download)
0,00
Roberto Simanowski
Sprachmaschinen
eBook (epub)
Sofort lieferbar (Download)
19,99
Yuval Noah Harari
NEXUS
eBook (epub)
Sofort lieferbar (Download)
26,99
Ben Aaronovitch
Ein weißer Schwan in Tabernacle Street
eBook (epub)
Sofort lieferbar (Download)
9,99
Sibylle Berg
RCE
eBook (epub)
Sofort lieferbar (Download)
12,99
Marc Elsberg
ZERO - Sie wissen, was du tust
eBook (epub)
Sofort lieferbar (Download)
10,99
Annekathrin Kohout
Hyperreaktiv
eBook (epub)
Sofort lieferbar (Download)
15,99
Ingo Dachwitz
Digitaler Kolonialismus
eBook (epub)
Sofort lieferbar (Download)
21,99
Sofort lieferbar (Download)
9,99
Neal Stephenson
Snow Crash
eBook (epub)
Sofort lieferbar (Download)
14,99
Sofort lieferbar (Download)
12,99
Miriam Meckel
Alles überall auf einmal
eBook (epub)
Sofort lieferbar (Download)
12,99
Max Tegmark
Leben 3.0
eBook (epub)
Sofort lieferbar (Download)
14,99
Katharina Zweig
Ein Algorithmus hat kein Taktgefühl
eBook (epub)
Sofort lieferbar (Download)
9,99
Dirk Becker
Einstieg in Linux Mint 22
eBook (epub)
Sofort lieferbar (Download)
23,92
Ernest Cline
Ready Player Two
eBook (epub)
Sofort lieferbar (Download)
12,99
Ernest Cline
Ready Player One
eBook (epub)
Sofort lieferbar (Download)
8,99
Frank Geisler
Docker für Dummies
eBook (epub)
Sofort lieferbar (Download)
26,99
Sofort lieferbar (Download)
21,99
Jens Lubbadeh
Unsterblich
eBook (epub)
Sofort lieferbar (Download)
9,99
Christian Stöcker
Die Große Beschleunigung
eBook (epub)
Sofort lieferbar (Download)
10,99
Matthias Matting
Tolino shine - das inoffizielle Handbuch.
eBook (epub)
Sofort lieferbar (Download)
2,99
Kate Crawford
Atlas der KI
eBook (epub)
Sofort lieferbar (Download)
17,99
Ruth Ware
Zero Days
eBook (epub)
Sofort lieferbar (Download)
12,99
Detlef Krause
Webtexten für Nicht-Texter
eBook (epub)
Sofort lieferbar (Download)
15,99
Sofort lieferbar (Download)
19,99
Florian Dalwigk
Python Projekte für die Praxis
eBook (epub)
Sofort lieferbar (Download)
22,99
Michael Kofler
Raspberry Pi
eBook (epub)
Sofort lieferbar (Download)
35,92
Sabrina Kraft
Make it Big!
eBook (epub)
Sofort lieferbar (Download)
27,92
Katharina Zweig
Die KI war's!
eBook (epub)
Sofort lieferbar (Download)
14,99
Ralf-Peter Kleinert
Proxmox VE 8 Powerbuch
eBook (epub)
Sofort lieferbar (Download)
7,99
Udo Brandes
Mikrocontroller ESP32
eBook (epub)
Sofort lieferbar (Download)
35,92
Yishai Sarid
Schwachstellen
eBook (epub)
Sofort lieferbar (Download)
13,99
Stuart J. Russell
Human Compatible
eBook (pdf)
Sofort lieferbar (Download)
9,99
Sofort lieferbar (Download)
0,00