Scripting

das Praxisbuch für Admins und DevOps-Teams

(Autor)

Buch | Hardcover
420 Seiten
2023 | 1. Auflage
Rheinwerk (Verlag)
978-3-8362-9424-9 (ISBN)
39,90 inkl. MwSt
Die Kunst, Probleme in 10 Zeilen zu lösen

  • Sicher mit Python, der PowerShell und Bash arbeiten
  • Automatisierungslösungen für Backups, Datenbanken, Web-Scraping und die Cloud
  • Tools und Workflows: SSH, Git, REST-APIs, RegExps, Filter und Pipes

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.

Für alle Systeme
Egal, ob Sie mit Linux, Windows oder dem Mac arbeiten, ob Sie lokale Systeme administrieren oder per SSH auf die Cloud zugreifen: Crashkurse für die Bash/ZSH, PowerShell und Python machen Sie fit fürs Scripting.

Keep it simple, Stupid!
Wenn Sie schon länger in der IT arbeiten, wissen Sie, dass nichts über das KISS-Prinzip geht. Einfache Scripts zerlegen komplexe Probleme in kleine Schritte und erleichtern die Arbeit in der Systemadministration oder der Softwareentwicklung.

Musterlösungen und Beispielscripts
Möchten Sie Markdown-Dokumente automatisiert erstellen oder Script-gestützte Sicherungen durchführen? Webinhalte scrapen oder Ihre Lösungen in Docker-Containern weitergeben? Für viele Szenarien finden Sie Musterlösungen, die Sie als Grundlage für eigene Scripts nutzen können.

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

Michael Kofler hat Telematik an der TU Graz studiert und ist der renommierteste Fachbuchautor im deutschsprachigen Raum. Er behandelt von Linux über Swift bis zur IT-Security alles, was Sie in der Systemadministration oder der Softwareentwicklung wissen müssen. Zu seinen Themengebieten zählen außerdem auch Python, Swift, Java und der Raspberry Pi. Er ist Entwickler, berät Firmen und arbeitet als Lehrbeauftragter. In diesem Buch zeigt er Ihnen, wie Sie clevere und elegante Scripte erstellen.

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

»Ein hervorragendes Werk, das sowohl Anfängern als auch Fortgeschrittenen wertvolles Wissen über Skripting in der IT-Branche vermittelt. Die klare Strukturierung, praxisnahe Beispiele und umfassenden Erklärungen machen dieses Buch zu einer ausgezeichneten Ressource für alle, die ihre Arbeit mit diesem Bereich verbessern möchten.« Phindie.de 202310

»Ein wertvolles Werkzeug für jeden, der in der IT-Branche tätig ist und nach praktischen Lösungen für Code-Herausforderungen sucht.«

Erscheinungsdatum
Zusatzinfo Illustrationen
Verlagsort Bonn
Sprache deutsch
Maße 168 x 240 mm
Einbandart gebunden
Themenwelt Mathematik / Informatik Informatik Netzwerke
Mathematik / Informatik Informatik Software Entwicklung
Mathematik / Informatik Informatik Web / Internet
Schlagworte Admin • Anfänger-Guide • Anleitung • Bash • Befehlliste • Buch • Coding • DevOps-Team • Entwickler • Interpreter • Lernen • python-skript • Scripting programmierung • Shell • Skriptsprache • Tipps Tricks • Visual Studio Code • Wissen
ISBN-10 3-8362-9424-9 / 3836294249
ISBN-13 978-3-8362-9424-9 / 9783836294249
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