Scripting - Michael Kofler

Michael Kofler

Scripting

Das Praxisbuch für Administratoren und DevOps-Teams. 1. Auflage
eBook (epub), 492 Seiten
EAN 9783836294263
Veröffentlicht Juli 2023
Verlag/Hersteller Rheinwerk Verlag GmbH
31,92 inkl. MwSt.
Sofort Lieferbar (Download)
Teilen
Beschreibung

Scripting ist die Kunst, Probleme in wenigen Zeilen zu lösen. Denn viele Aufgaben in der IT erfordern keine komplexen Lösungen in einer Hochsprache - oft reichen ein paar Zeilen Python-, Bash- oder PowerShell-Code. Michael Kofler zeigt Ihnen in diesem Praxisbuch, wie Sie die Macht der Scripting-Umgebungen nutzen. Anhand zahlreicher Praxisbeispiele erfahren Sie, wie Sie Aufgaben automatisieren und wie Ihnen Shell- oder Pythonscripts viel Arbeit abnehmen können. Mit dabei ist ein Überblick über moderne Shell-Werkzeuge und IDEs: Visual Studio Code, Git, SSH und mehr. Aus dem Inhalt: - Bash, ZSH und die Linux-Toolbox - PowerShell und CmdLets - Python und Pip - SSH, VSCode, Git, Curl: Werkzeugenkasten für moderne Scripts - Scripts automatisch ausführen: Cron und Task Scheduler - Backups automatisieren - Bilder verarbeiten - Monitoring: Logging-Dateien auswerten - Web-Scraping und -Mining - Scripting in der AWS-Cloud - Automatisierte Builds mit Docker-Containern

Portrait

Michael Kofler hat Telematik an der TU Graz studiert und ist einer der erfolgreichsten deutschsprachigen IT-Fachbuchautoren. Zu seinen Themengebieten zählen neben Linux auch IT-Sicherheit, Python, Swift, Java und der Raspberry Pi. Er ist Entwickler, berät Firmen und arbeitet als Lehrbeauftragter.

Inhaltsverzeichnis

Vorwort ... 11 TEIL I. Scripting-Sprachen ... 15 1. Scripting: Do one thing ... ... 17 1.1 ... Was heißt Scripting? ... 17 1.2 ... Script-Sprachen ... 20 1.3 ... Die Qual der Wahl ... 24 2. Zehn mal zehn Zeilen ... 27 2.1 ... Markdown-Rechtschreibkorrektur (Bash) ... 27 2.2 ... Bilder nach Aufnahmedatum sortieren (PowerShell) ... 28 2.3 ... JSON-Datei in das XML-Format umwandeln (Python) ... 29 2.4 ... Tägliches Server-Backup (Bash) ... 30 2.5 ... Web Scraping (Python) ... 31 2.6 ... Wetterdaten protokollieren (Python) ... 32 2.7 ... Hyper-V-Aufräumaktion (PowerShell) ... 33 2.8 ... Statistische Auswertung einer Logging-Datei (Bash) ... 34 2.9 ... Datei-Upload in die Cloud (PowerShell) ... 35 2.10 ... Virtuelle Maschinen klonen (Bash) ... 35 3. Bash und Zsh ... 37 3.1 ... Terminal, Shell und Bash ... 37 3.2 ... Installation ... 38 3.3 ... Kommandos interaktiv ausführen ... 42 3.4 ... Zsh als Bash-Alternative ... 45 3.5 ... Das erste Bash-Script ... 47 3.6 ... Kommandos ausführen ... 53 3.7 ... Standardeingabe und Standardausgabe ... 56 3.8 ... Globbing, Brace Extension, Umgang mit Datei- und Verzeichnisnamen ... 59 3.9 ... Variablen ... 63 3.10 ... Zeichenketten ... 69 3.11 ... Verzweigungen ... 77 3.12 ... Schleifen ... 83 3.13 ... Funktionen ... 87 3.14 ... Umgang mit Fehlern ... 88 4. PowerShell ... 91 4.1 ... Installation ... 91 4.2 ... Das Windows-Terminal ... 96 4.3 ... Aufruf von CmdLets und Funktionen ... 98 4.4 ... Kommandos kombinieren ... 105 4.5 ... Das erste Script ... 108 4.6 ... Variablen, Zeichenketten und Objekte ... 114 4.7 ... Arrays und Hashtables ... 125 4.8 ... Ausgabeumleitung ... 128 4.9 ... Schleifen ... 132 4.10 ... Verzweigungen ... 135 4.11 ... Funktionen und Parameter ... 137 4.12 ... Module ... 142 4.13 ... Fehlerabsicherung ... 145 5. Python ... 149 5.1 ... Python installieren ... 150 5.2 ... Python in einem Terminalfenster kennenlernen ... 152 5.3 ... Eigene Scripts programmieren ... 153 5.4 ... Elementare Syntaxregeln ... 155 5.5 ... Zahlen ... 157 5.6 ... Zeichenketten ... 159 5.7 ... Listen ... 166 5.8 ... Tupel, Sets und Dictionaries ... 169 5.9 ... Variablen ... 172 5.10 ... Operatoren ... 176 5.11 ... Verzweigungen (if) ... 178 5.12 ... Schleifen (for und while) ... 180 5.13 ... Funktionen ... 186 5.14 ... Textdateien verarbeiten ... 190 5.15 ... Fehlerabsicherung ... 193 5.16 ... Systemfunktionen ... 194 5.17 ... Module ... 197 5.18 ... Zusatzmodule installieren mit »pip« ... 199 TEIL II. Arbeitstechniken und Werkzeuge ... 205 6. Linux-Toolbox ... 207 6.1 ... Verzeichnisse und Dateien ... 208 6.2 ... Dateien suchen ... 209 6.3 ... Dateien komprimieren und archivieren ... 211 6.4 ... Arbeiten mit root-Rechten ... 213 6.5 ... Prozesse verwalten ... 215 6.6 ... Software-Installation ... 219 6.7 ... Sonstige Kommandos ... 220 7. CmdLets für die PowerShell ... 223 7.1 ... Verzeichnisse und Dateien ... 223 7.2 ... Dateien suchen ... 227 7.3 ... Dateien komprimieren und archivieren ... 231 7.4 ... Prozessverwaltung ... 232 7.5 ... Registrierdatenbank und Systeminformationen ... 236 7.6 ... CmdLet-Ergebnisse verarbeiten ... 239 7.7 ... Sonstige CmdLets ... 244 7.8 ... Zusatzmodule installieren ... 244 7.9 ... Standard-Aliasse ... 247 8. Textauswertung mit Filtern und Pipes ... 249 8.1 ... grep, sort, cut und uniq ... 250 8.2 ... Beispiel: Automatische Coronazahlenauswertung ... 257 8.3 ... Beispiel: ping-Auswertung ... 259 8.4 ... Beispiel: Apache-Log-Analyse ... 260 8.5 ... CSV-Dateien ... 264 9. Reguläre Muster ... 269 9.1 ... Syntaxregeln für reguläre Ausdrücke ... 270 9.2 ... Gruppen und Alternativen ... 272 9.3 ... Reguläre Muster in der Bash (grep, sed) ... 278 9.4 ... Reguläre Muster in der PowerShell ... 283 9.5 ... Reguläre Muster in Python (re-Modul) ... 287 10. JSON, XML und INI ... 291 10.1 ... JSON in der PowerShell ... 291 10.2 ... JSON und Python ... 295 10.3 ... JSON in der Bash ... 299 10.4 ... XML in der PowerShell ... 302 10.5 ... XML und Python ... 306 10.6 ... XML in der Bash ... 310 10.7 ... INI-Dateien ... 312 11. Scripts automatisch ausführen ... 315 11.1 ... Cron ... 315 11.2 ... Beispiel: Webserver-Monitoring ... 319 11.3 ... Windows Task Scheduler ... 321 11.4 ... Beispiel: Währungskurse speichern ... 326 11.5 ... Änderungen im Dateisystem verfolgen ... 327 12. SSH ... 331 12.1 ... SSH-Client und -Server installieren ... 332 12.2 ... Mit SSH arbeiten ... 335 12.3 ... scp und rsync ... 340 12.4 ... SSH-Authentifizierung mit Schlüsseln ... 342 12.5 ... Beispiel: Bilder-Upload auf einen Linux-Webserver ... 345 12.6 ... Beispiel: Auswertung virtueller Maschinen ... 348 13. Visual Studio Code ... 351 13.1 ... Einführung ... 351 13.2 ... Sprachspezifische VSCode-Erweiterungen ... 353 13.3 ... Remote-SSH-Erweiterung ... 355 14. Git ... 359 14.1 ... Git-Crashkurs ... 360 14.2 ... Der richtige Umgang mit Einstellungen und Passwörtern ... 368 14.3 ... Git-Automatisierung ... 371 14.4 ... Git Hooks ... 374 TEIL III. Anwendungen und Beispiele ... 377 15. Backups ... 379 15.1 ... Verzeichnisse auf externen Datenträger synchronisieren ... 379 15.2 ... WordPress-Backup ... 384 15.3 ... SQL-Server-Backup ... 387 16. Bildverarbeitung ... 389 16.1 ... Bilddateien manipulieren ... 389 16.2 ... Fotos nach Aufnahmedatum sortieren ... 394 16.3 ... EXIF-Metadaten in SQL-Kommandos umwandeln ... 397 17. Web Scraping ... 403 17.1 ... Websites mit wget herunterladen ... 405 17.2 ... Web Scraping mit regulären Mustern ... 408 17.3 ... Web Scraping mit Beautiful Soup ... 409 17.4 ... Web Scraping mit Requests-HTML ... 414 17.5 ... Web Scraping mit der PowerShell ... 417 18. REST-APIs nutzen ... 419 18.1 ... curl und wget ... 420 18.2 ... REST-APIs in der PowerShell nutzen ... 425 18.3 ... Beispiel: Aktuelles Wetter ermitteln ... 428 18.4 ... REST-APIs in Python nutzen ... 429 18.5 ... Beispiel: Strompreise ermitteln und grafisch darstellen ... 430 19. Datenbanken ... 435 19.1 ... Datenbanken aktualisieren und warten ... 436 19.2 ... Neuen Kunden-Account einrichten ... 437 19.3 ... EXIF-Metadaten in einer Datenbank speichern ... 440 19.4 ... JSON-Daten in eine Tabelle importieren ... 444 20. Scripting in der Cloud ... 447 20.1 ... AWS CLI ... 447 20.2 ... Beispiel: Verschlüsselte Backup-Dateien in die Cloud hochladen ... 452 20.3 ... AWS-PowerShell-Modul ... 454 20.4 ... Beispiel: GroT1ss e Dateien einer Webseite in die Cloud auslagern ... 457 21. Virtuelle Maschinen ... 461 21.1 ... Virtuelle Maschinen einrichten und ausführen (KVM) ... 461 21.2 ... Netzwerkkonfiguration automatisieren (KVM) ... 464 21.3 ... Hyper-V steuern ... 467 22. Docker und Scripting ... 473 22.1 ... Beispiel: EXIF-Sorter als Docker-Image ... 474 22.2 ... Beispiel: Markdown/Pandoc-Umgebung ... 477 Index ... 485

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
Yuval Noah Harari
NEXUS
eBook (epub)
Sofort lieferbar (Download)
26,99
Karl Olsberg
Mirror Welt
eBook (epub)
Sofort lieferbar (Download)
0,00
Roberto Simanowski
Sprachmaschinen
eBook (epub)
Sofort lieferbar (Download)
19,99
Marc Elsberg
ZERO - Sie wissen, was du tust
eBook (epub)
Sofort lieferbar (Download)
10,99
Ben Aaronovitch
Ein weißer Schwan in Tabernacle Street
eBook (epub)
Sofort lieferbar (Download)
9,99
Annekathrin Kohout
Hyperreaktiv
eBook (epub)
Sofort lieferbar (Download)
15,99
Sofort lieferbar (Download)
9,99
Sibylle Berg
RCE
eBook (epub)
Sofort lieferbar (Download)
12,99
Max Tegmark
Leben 3.0
eBook (epub)
Sofort lieferbar (Download)
14,99
Neal Stephenson
Snow Crash
eBook (epub)
Sofort lieferbar (Download)
14,99
Ingo Dachwitz
Digitaler Kolonialismus
eBook (epub)
Sofort lieferbar (Download)
21,99
Miriam Meckel
Alles überall auf einmal
eBook (epub)
Sofort lieferbar (Download)
12,99
Sofort lieferbar (Download)
12,99
Ernest Cline
Ready Player One
eBook (epub)
Sofort lieferbar (Download)
8,99
Christian Stöcker
Die Große Beschleunigung
eBook (epub)
Sofort lieferbar (Download)
10,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
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
Matthias Matting
Tolino shine - das inoffizielle Handbuch.
eBook (epub)
Sofort lieferbar (Download)
2,99
Juan S. Guse
Tausendmal so viel Geld wie jetzt
eBook (epub)
Sofort lieferbar (Download)
18,99
Kate Crawford
Atlas der KI
eBook (epub)
Sofort lieferbar (Download)
17,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
Richard Ovenden
Bedrohte Bücher
eBook (epub)
Sofort lieferbar (Download)
14,99
Stuart J. Russell
Human Compatible
eBook (pdf)
Sofort lieferbar (Download)
9,99
Sofort lieferbar (Download)
0,00