conference logo
Grazer Linuxtage 2018

Playlist "Python statt Shell-Scripts"

Python statt Shell-Scripts

Thomas Aglassinger

Shell-Scripts sind beliebt, um schnell und kompakt wiederholende Schritte zu automatisieren. Allerdings sind komplexe Shell-Scripts schwer wartbar und haben diverse Tücken. Python bietet eine Alternative als "echte" Programmiersprache, die weiterhin kompakte und schnell erstellbare Scripts ermöglicht.

Der Vortrag zeigt anhand von Bespielen, wie sich mit wenigen Zeilen Python-Code Funktionalitäten von Shell-Scripts nachbauen lassen.

- Standardbefehlen wie cp, rm, grep, find, tail, head etc. nachbauen.
- Externe Programme aufrufenderen Ausgabe weiterverarbeiten.
- Befehlszeilen-Optionen auswerten und prüfen.
- Umgebungsvariablen verwenden.
- Fehler behandeln.

Gegenüber klassischen Shell-Scripts sind Python-Programme gut lesbar und damit wartbar, können bei steigender Komplexität in mehrere Module aufgeteilt werden, verwenden zur Fehlerbehandlung Exception-Handling statt leicht ignorierbaren Exit-Codes, sind plattformunabhängig und können für "low level" Operationen wie String-Transformationen oder Datumsfunktionen auf eine umfangreiche Standardbibliothek zugreifen.

Dabei erhalten sie die großen Vorteil von Shell-Scripts: sie sind schnell geschrieben und kompakt.