Workshop-Wiki · Deutsch

Shell Scripting Übungen: Intermediate (DE)

Diese Übungen vertiefen CLI-Design, Funktionen, getopts, Textverarbeitung, Fehlerbehandlung und Cleanup. Jede Aufgabe verlangt ein reproduzierbares Ergebnis, keine Beschreibung ohne Prüfung.

Workshop-Beispiele als ZIP
Lernstand in der Web-App

Kapitel als gelesen markieren, Lesefortschritt sehen und Praxismodule abhaken: Diese Funktionen stehen nach Aktivierung der optionalen Web-App zur Verfügung. Der Workshop-Fortschritt ergibt sich automatisch aus den Kapiteln aller Dokumentseiten. Deine Auswahl bleibt auf diesem Gerät; es gibt kein Konto und keinen Serverabgleich. Eine Installation ist nicht erforderlich. Beim Widerruf in den Datenschutz-Einstellungen wird der Lernstand gelöscht.

Lesefortschritt0%
0%
0 / 5 Kapitel gelesen
Weitere SprachfassungEnglisch ↗Griechisch ↗

Shell Scripting Übungen: Intermediate (DE)

Diese Übungen vertiefen CLI-Design, Funktionen, getopts, Textverarbeitung, Fehlerbehandlung und Cleanup. Jede Aufgabe verlangt ein reproduzierbares Ergebnis, keine Beschreibung ohne Prüfung.

Abgabeformat

  • Skript oder Patch
  • verwendete Testdaten
  • ausgeführte Kommandos
  • Exit Codes
  • kurze Risiko- und Recovery-Notiz
01 / 05

Aufgaben

Aufgabe 01: Quoting

Baue ein kleines Skript oder verbessere ein vorhandenes Beispiel mit Schwerpunkt Quoting.

Anforderungen:

  • bash -n muss erfolgreich sein.
  • Ungültige Eingaben müssen einen erklärbaren Exit Code liefern.
  • Ausgabe für Menschen und Maschinen muss getrennt sein.
  • Das Skript darf keine produktiven Pfade oder Secrets verwenden.

Nachweis:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Aufgabe 02: Exit Codes

Baue ein kleines Skript oder verbessere ein vorhandenes Beispiel mit Schwerpunkt Exit Codes.

Anforderungen:

  • bash -n muss erfolgreich sein.
  • Ungültige Eingaben müssen einen erklärbaren Exit Code liefern.
  • Ausgabe für Menschen und Maschinen muss getrennt sein.
  • Das Skript darf keine produktiven Pfade oder Secrets verwenden.

Nachweis:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Aufgabe 03: Pipelines

Baue ein kleines Skript oder verbessere ein vorhandenes Beispiel mit Schwerpunkt Pipelines.

Anforderungen:

  • bash -n muss erfolgreich sein.
  • Ungültige Eingaben müssen einen erklärbaren Exit Code liefern.
  • Ausgabe für Menschen und Maschinen muss getrennt sein.
  • Das Skript darf keine produktiven Pfade oder Secrets verwenden.

Nachweis:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Aufgabe 04: getopts

Baue ein kleines Skript oder verbessere ein vorhandenes Beispiel mit Schwerpunkt getopts.

Anforderungen:

  • bash -n muss erfolgreich sein.
  • Ungültige Eingaben müssen einen erklärbaren Exit Code liefern.
  • Ausgabe für Menschen und Maschinen muss getrennt sein.
  • Das Skript darf keine produktiven Pfade oder Secrets verwenden.

Nachweis:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Aufgabe 05: trap

Baue ein kleines Skript oder verbessere ein vorhandenes Beispiel mit Schwerpunkt trap.

Anforderungen:

  • bash -n muss erfolgreich sein.
  • Ungültige Eingaben müssen einen erklärbaren Exit Code liefern.
  • Ausgabe für Menschen und Maschinen muss getrennt sein.
  • Das Skript darf keine produktiven Pfade oder Secrets verwenden.

Nachweis:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Aufgabe 06: mktemp

Baue ein kleines Skript oder verbessere ein vorhandenes Beispiel mit Schwerpunkt mktemp.

Anforderungen:

  • bash -n muss erfolgreich sein.
  • Ungültige Eingaben müssen einen erklärbaren Exit Code liefern.
  • Ausgabe für Menschen und Maschinen muss getrennt sein.
  • Das Skript darf keine produktiven Pfade oder Secrets verwenden.

Nachweis:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Aufgabe 07: Textverarbeitung

Baue ein kleines Skript oder verbessere ein vorhandenes Beispiel mit Schwerpunkt Textverarbeitung.

Anforderungen:

  • bash -n muss erfolgreich sein.
  • Ungültige Eingaben müssen einen erklärbaren Exit Code liefern.
  • Ausgabe für Menschen und Maschinen muss getrennt sein.
  • Das Skript darf keine produktiven Pfade oder Secrets verwenden.

Nachweis:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Aufgabe 08: Security

Baue ein kleines Skript oder verbessere ein vorhandenes Beispiel mit Schwerpunkt Security.

Anforderungen:

  • bash -n muss erfolgreich sein.
  • Ungültige Eingaben müssen einen erklärbaren Exit Code liefern.
  • Ausgabe für Menschen und Maschinen muss getrennt sein.
  • Das Skript darf keine produktiven Pfade oder Secrets verwenden.

Nachweis:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Aufgabe 09: Quoting

Baue ein kleines Skript oder verbessere ein vorhandenes Beispiel mit Schwerpunkt Quoting.

Anforderungen:

  • bash -n muss erfolgreich sein.
  • Ungültige Eingaben müssen einen erklärbaren Exit Code liefern.
  • Ausgabe für Menschen und Maschinen muss getrennt sein.
  • Das Skript darf keine produktiven Pfade oder Secrets verwenden.

Nachweis:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Aufgabe 10: Exit Codes

Baue ein kleines Skript oder verbessere ein vorhandenes Beispiel mit Schwerpunkt Exit Codes.

Anforderungen:

  • bash -n muss erfolgreich sein.
  • Ungültige Eingaben müssen einen erklärbaren Exit Code liefern.
  • Ausgabe für Menschen und Maschinen muss getrennt sein.
  • Das Skript darf keine produktiven Pfade oder Secrets verwenden.

Nachweis:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Aufgabe 11: Pipelines

Baue ein kleines Skript oder verbessere ein vorhandenes Beispiel mit Schwerpunkt Pipelines.

Anforderungen:

  • bash -n muss erfolgreich sein.
  • Ungültige Eingaben müssen einen erklärbaren Exit Code liefern.
  • Ausgabe für Menschen und Maschinen muss getrennt sein.
  • Das Skript darf keine produktiven Pfade oder Secrets verwenden.

Nachweis:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Aufgabe 12: getopts

Baue ein kleines Skript oder verbessere ein vorhandenes Beispiel mit Schwerpunkt getopts.

Anforderungen:

  • bash -n muss erfolgreich sein.
  • Ungültige Eingaben müssen einen erklärbaren Exit Code liefern.
  • Ausgabe für Menschen und Maschinen muss getrennt sein.
  • Das Skript darf keine produktiven Pfade oder Secrets verwenden.

Nachweis:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Aufgabe 13: trap

Baue ein kleines Skript oder verbessere ein vorhandenes Beispiel mit Schwerpunkt trap.

Anforderungen:

  • bash -n muss erfolgreich sein.
  • Ungültige Eingaben müssen einen erklärbaren Exit Code liefern.
  • Ausgabe für Menschen und Maschinen muss getrennt sein.
  • Das Skript darf keine produktiven Pfade oder Secrets verwenden.

Nachweis:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Aufgabe 14: mktemp

Baue ein kleines Skript oder verbessere ein vorhandenes Beispiel mit Schwerpunkt mktemp.

Anforderungen:

  • bash -n muss erfolgreich sein.
  • Ungültige Eingaben müssen einen erklärbaren Exit Code liefern.
  • Ausgabe für Menschen und Maschinen muss getrennt sein.
  • Das Skript darf keine produktiven Pfade oder Secrets verwenden.

Nachweis:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Aufgabe 15: Textverarbeitung

Baue ein kleines Skript oder verbessere ein vorhandenes Beispiel mit Schwerpunkt Textverarbeitung.

Anforderungen:

  • bash -n muss erfolgreich sein.
  • Ungültige Eingaben müssen einen erklärbaren Exit Code liefern.
  • Ausgabe für Menschen und Maschinen muss getrennt sein.
  • Das Skript darf keine produktiven Pfade oder Secrets verwenden.

Nachweis:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Aufgabe 16: Security

Baue ein kleines Skript oder verbessere ein vorhandenes Beispiel mit Schwerpunkt Security.

Anforderungen:

  • bash -n muss erfolgreich sein.
  • Ungültige Eingaben müssen einen erklärbaren Exit Code liefern.
  • Ausgabe für Menschen und Maschinen muss getrennt sein.
  • Das Skript darf keine produktiven Pfade oder Secrets verwenden.

Nachweis:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Aufgabe 17: Quoting

Baue ein kleines Skript oder verbessere ein vorhandenes Beispiel mit Schwerpunkt Quoting.

Anforderungen:

  • bash -n muss erfolgreich sein.
  • Ungültige Eingaben müssen einen erklärbaren Exit Code liefern.
  • Ausgabe für Menschen und Maschinen muss getrennt sein.
  • Das Skript darf keine produktiven Pfade oder Secrets verwenden.

Nachweis:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Aufgabe 18: Exit Codes

Baue ein kleines Skript oder verbessere ein vorhandenes Beispiel mit Schwerpunkt Exit Codes.

Anforderungen:

  • bash -n muss erfolgreich sein.
  • Ungültige Eingaben müssen einen erklärbaren Exit Code liefern.
  • Ausgabe für Menschen und Maschinen muss getrennt sein.
  • Das Skript darf keine produktiven Pfade oder Secrets verwenden.

Nachweis:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Aufgabe 19: Pipelines

Baue ein kleines Skript oder verbessere ein vorhandenes Beispiel mit Schwerpunkt Pipelines.

Anforderungen:

  • bash -n muss erfolgreich sein.
  • Ungültige Eingaben müssen einen erklärbaren Exit Code liefern.
  • Ausgabe für Menschen und Maschinen muss getrennt sein.
  • Das Skript darf keine produktiven Pfade oder Secrets verwenden.

Nachweis:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Aufgabe 20: getopts

Baue ein kleines Skript oder verbessere ein vorhandenes Beispiel mit Schwerpunkt getopts.

Anforderungen:

  • bash -n muss erfolgreich sein.
  • Ungültige Eingaben müssen einen erklärbaren Exit Code liefern.
  • Ausgabe für Menschen und Maschinen muss getrennt sein.
  • Das Skript darf keine produktiven Pfade oder Secrets verwenden.

Nachweis:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Aufgabe 21: trap

Baue ein kleines Skript oder verbessere ein vorhandenes Beispiel mit Schwerpunkt trap.

Anforderungen:

  • bash -n muss erfolgreich sein.
  • Ungültige Eingaben müssen einen erklärbaren Exit Code liefern.
  • Ausgabe für Menschen und Maschinen muss getrennt sein.
  • Das Skript darf keine produktiven Pfade oder Secrets verwenden.

Nachweis:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Aufgabe 22: mktemp

Baue ein kleines Skript oder verbessere ein vorhandenes Beispiel mit Schwerpunkt mktemp.

Anforderungen:

  • bash -n muss erfolgreich sein.
  • Ungültige Eingaben müssen einen erklärbaren Exit Code liefern.
  • Ausgabe für Menschen und Maschinen muss getrennt sein.
  • Das Skript darf keine produktiven Pfade oder Secrets verwenden.

Nachweis:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Aufgabe 23: Textverarbeitung

Baue ein kleines Skript oder verbessere ein vorhandenes Beispiel mit Schwerpunkt Textverarbeitung.

Anforderungen:

  • bash -n muss erfolgreich sein.
  • Ungültige Eingaben müssen einen erklärbaren Exit Code liefern.
  • Ausgabe für Menschen und Maschinen muss getrennt sein.
  • Das Skript darf keine produktiven Pfade oder Secrets verwenden.

Nachweis:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Aufgabe 24: Security

Baue ein kleines Skript oder verbessere ein vorhandenes Beispiel mit Schwerpunkt Security.

Anforderungen:

  • bash -n muss erfolgreich sein.
  • Ungültige Eingaben müssen einen erklärbaren Exit Code liefern.
  • Ausgabe für Menschen und Maschinen muss getrennt sein.
  • Das Skript darf keine produktiven Pfade oder Secrets verwenden.

Nachweis:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Aufgabe 25: Quoting

Baue ein kleines Skript oder verbessere ein vorhandenes Beispiel mit Schwerpunkt Quoting.

Anforderungen:

  • bash -n muss erfolgreich sein.
  • Ungültige Eingaben müssen einen erklärbaren Exit Code liefern.
  • Ausgabe für Menschen und Maschinen muss getrennt sein.
  • Das Skript darf keine produktiven Pfade oder Secrets verwenden.

Nachweis:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Aufgabe 26: Exit Codes

Baue ein kleines Skript oder verbessere ein vorhandenes Beispiel mit Schwerpunkt Exit Codes.

Anforderungen:

  • bash -n muss erfolgreich sein.
  • Ungültige Eingaben müssen einen erklärbaren Exit Code liefern.
  • Ausgabe für Menschen und Maschinen muss getrennt sein.
  • Das Skript darf keine produktiven Pfade oder Secrets verwenden.

Nachweis:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Aufgabe 27: Pipelines

Baue ein kleines Skript oder verbessere ein vorhandenes Beispiel mit Schwerpunkt Pipelines.

Anforderungen:

  • bash -n muss erfolgreich sein.
  • Ungültige Eingaben müssen einen erklärbaren Exit Code liefern.
  • Ausgabe für Menschen und Maschinen muss getrennt sein.
  • Das Skript darf keine produktiven Pfade oder Secrets verwenden.

Nachweis:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Aufgabe 28: getopts

Baue ein kleines Skript oder verbessere ein vorhandenes Beispiel mit Schwerpunkt getopts.

Anforderungen:

  • bash -n muss erfolgreich sein.
  • Ungültige Eingaben müssen einen erklärbaren Exit Code liefern.
  • Ausgabe für Menschen und Maschinen muss getrennt sein.
  • Das Skript darf keine produktiven Pfade oder Secrets verwenden.

Nachweis:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Aufgabe 29: trap

Baue ein kleines Skript oder verbessere ein vorhandenes Beispiel mit Schwerpunkt trap.

Anforderungen:

  • bash -n muss erfolgreich sein.
  • Ungültige Eingaben müssen einen erklärbaren Exit Code liefern.
  • Ausgabe für Menschen und Maschinen muss getrennt sein.
  • Das Skript darf keine produktiven Pfade oder Secrets verwenden.

Nachweis:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Aufgabe 30: mktemp

Baue ein kleines Skript oder verbessere ein vorhandenes Beispiel mit Schwerpunkt mktemp.

Anforderungen:

  • bash -n muss erfolgreich sein.
  • Ungültige Eingaben müssen einen erklärbaren Exit Code liefern.
  • Ausgabe für Menschen und Maschinen muss getrennt sein.
  • Das Skript darf keine produktiven Pfade oder Secrets verwenden.

Nachweis:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Aufgabe 31: Textverarbeitung

Baue ein kleines Skript oder verbessere ein vorhandenes Beispiel mit Schwerpunkt Textverarbeitung.

Anforderungen:

  • bash -n muss erfolgreich sein.
  • Ungültige Eingaben müssen einen erklärbaren Exit Code liefern.
  • Ausgabe für Menschen und Maschinen muss getrennt sein.
  • Das Skript darf keine produktiven Pfade oder Secrets verwenden.

Nachweis:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Aufgabe 32: Security

Baue ein kleines Skript oder verbessere ein vorhandenes Beispiel mit Schwerpunkt Security.

Anforderungen:

  • bash -n muss erfolgreich sein.
  • Ungültige Eingaben müssen einen erklärbaren Exit Code liefern.
  • Ausgabe für Menschen und Maschinen muss getrennt sein.
  • Das Skript darf keine produktiven Pfade oder Secrets verwenden.

Nachweis:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Aufgabe 33: Quoting

Baue ein kleines Skript oder verbessere ein vorhandenes Beispiel mit Schwerpunkt Quoting.

Anforderungen:

  • bash -n muss erfolgreich sein.
  • Ungültige Eingaben müssen einen erklärbaren Exit Code liefern.
  • Ausgabe für Menschen und Maschinen muss getrennt sein.
  • Das Skript darf keine produktiven Pfade oder Secrets verwenden.

Nachweis:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Aufgabe 34: Exit Codes

Baue ein kleines Skript oder verbessere ein vorhandenes Beispiel mit Schwerpunkt Exit Codes.

Anforderungen:

  • bash -n muss erfolgreich sein.
  • Ungültige Eingaben müssen einen erklärbaren Exit Code liefern.
  • Ausgabe für Menschen und Maschinen muss getrennt sein.
  • Das Skript darf keine produktiven Pfade oder Secrets verwenden.

Nachweis:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Aufgabe 35: Pipelines

Baue ein kleines Skript oder verbessere ein vorhandenes Beispiel mit Schwerpunkt Pipelines.

Anforderungen:

  • bash -n muss erfolgreich sein.
  • Ungültige Eingaben müssen einen erklärbaren Exit Code liefern.
  • Ausgabe für Menschen und Maschinen muss getrennt sein.
  • Das Skript darf keine produktiven Pfade oder Secrets verwenden.

Nachweis:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"

Aufgabe 36: getopts

Baue ein kleines Skript oder verbessere ein vorhandenes Beispiel mit Schwerpunkt getopts.

Anforderungen:

  • bash -n muss erfolgreich sein.
  • Ungültige Eingaben müssen einen erklärbaren Exit Code liefern.
  • Ausgabe für Menschen und Maschinen muss getrennt sein.
  • Das Skript darf keine produktiven Pfade oder Secrets verwenden.

Nachweis:

bash
bash -n script.sh
./script.sh --help
./script.sh --dry-run
echo "$?"
02 / 05

Lösungshinweise

Nutze kleine Funktionen, konsequentes Quoting und eine klare usage-Funktion. Schreibe zuerst den Fehlerfall auf, dann den Happy Path. Bei destruktiven Operationen ist Dry-Run Pflicht.

03 / 05

Review-Checkliste für Übungen Intermediate

  • 01. Shebang und Ziel-Shell eindeutig benennen: Lege fest, welche Datei, welches Kommando, welcher Exit Code und welches Risiko betroffen sind.
  • 02. alle Variablenzugriffe quoten, außer Wortaufspaltung ist bewusst nötig: Lege fest, welche Datei, welches Kommando, welcher Exit Code und welches Risiko betroffen sind.
  • 03. Eingaben validieren, bevor sie Dateinamen, Optionen oder Kommandos beeinflussen: Lege fest, welche Datei, welches Kommando, welcher Exit Code und welches Risiko betroffen sind.
  • 04. Exit Codes explizit auswerten und dokumentieren: Lege fest, welche Datei, welches Kommando, welcher Exit Code und welches Risiko betroffen sind.
  • 05. stderr und stdout trennen: Lege fest, welche Datei, welches Kommando, welcher Exit Code und welches Risiko betroffen sind.
  • 06. temporäre Dateien mit mktemp erzeugen: Lege fest, welche Datei, welches Kommando, welcher Exit Code und welches Risiko betroffen sind.
  • 07. Cleanup über trap testen: Lege fest, welche Datei, welches Kommando, welcher Exit Code und welches Risiko betroffen sind.
  • 08. destruktive Operationen mit Dry-Run, Scope-Prüfung und Bestätigung absichern: Lege fest, welche Datei, welches Kommando, welcher Exit Code und welches Risiko betroffen sind.
  • 09. Secrets nie ausgeben oder committen: Lege fest, welche Datei, welches Kommando, welcher Exit Code und welches Risiko betroffen sind.
  • 10. PATH und externe Abhängigkeiten prüfen: Lege fest, welche Datei, welches Kommando, welcher Exit Code und welches Risiko betroffen sind.
  • 11. ShellCheck-Warnungen behandeln oder begründet unterdrücken: Lege fest, welche Datei, welches Kommando, welcher Exit Code und welches Risiko betroffen sind.
  • 12. Portabilitätsannahmen zwischen Bash und POSIX sh dokumentieren: Lege fest, welche Datei, welches Kommando, welcher Exit Code und welches Risiko betroffen sind.
  • 13. Shebang und Ziel-Shell eindeutig benennen: Lege fest, welche Datei, welches Kommando, welcher Exit Code und welches Risiko betroffen sind.
  • 14. alle Variablenzugriffe quoten, außer Wortaufspaltung ist bewusst nötig: Lege fest, welche Datei, welches Kommando, welcher Exit Code und welches Risiko betroffen sind.
  • 15. Eingaben validieren, bevor sie Dateinamen, Optionen oder Kommandos beeinflussen: Lege fest, welche Datei, welches Kommando, welcher Exit Code und welches Risiko betroffen sind.
  • 16. Exit Codes explizit auswerten und dokumentieren: Lege fest, welche Datei, welches Kommando, welcher Exit Code und welches Risiko betroffen sind.
  • 17. stderr und stdout trennen: Lege fest, welche Datei, welches Kommando, welcher Exit Code und welches Risiko betroffen sind.
  • 18. temporäre Dateien mit mktemp erzeugen: Lege fest, welche Datei, welches Kommando, welcher Exit Code und welches Risiko betroffen sind.
  • 19. Cleanup über trap testen: Lege fest, welche Datei, welches Kommando, welcher Exit Code und welches Risiko betroffen sind.
  • 20. destruktive Operationen mit Dry-Run, Scope-Prüfung und Bestätigung absichern: Lege fest, welche Datei, welches Kommando, welcher Exit Code und welches Risiko betroffen sind.
  • 21. Secrets nie ausgeben oder committen: Lege fest, welche Datei, welches Kommando, welcher Exit Code und welches Risiko betroffen sind.
  • 22. PATH und externe Abhängigkeiten prüfen: Lege fest, welche Datei, welches Kommando, welcher Exit Code und welches Risiko betroffen sind.
  • 23. ShellCheck-Warnungen behandeln oder begründet unterdrücken: Lege fest, welche Datei, welches Kommando, welcher Exit Code und welches Risiko betroffen sind.
  • 24. Portabilitätsannahmen zwischen Bash und POSIX sh dokumentieren: Lege fest, welche Datei, welches Kommando, welcher Exit Code und welches Risiko betroffen sind.
  • 25. Shebang und Ziel-Shell eindeutig benennen: Lege fest, welche Datei, welches Kommando, welcher Exit Code und welches Risiko betroffen sind.
  • 26. alle Variablenzugriffe quoten, außer Wortaufspaltung ist bewusst nötig: Lege fest, welche Datei, welches Kommando, welcher Exit Code und welches Risiko betroffen sind.
  • 27. Eingaben validieren, bevor sie Dateinamen, Optionen oder Kommandos beeinflussen: Lege fest, welche Datei, welches Kommando, welcher Exit Code und welches Risiko betroffen sind.
  • 28. Exit Codes explizit auswerten und dokumentieren: Lege fest, welche Datei, welches Kommando, welcher Exit Code und welches Risiko betroffen sind.
  • 29. stderr und stdout trennen: Lege fest, welche Datei, welches Kommando, welcher Exit Code und welches Risiko betroffen sind.
  • 30. temporäre Dateien mit mktemp erzeugen: Lege fest, welche Datei, welches Kommando, welcher Exit Code und welches Risiko betroffen sind.
  • 31. Cleanup über trap testen: Lege fest, welche Datei, welches Kommando, welcher Exit Code und welches Risiko betroffen sind.
  • 32. destruktive Operationen mit Dry-Run, Scope-Prüfung und Bestätigung absichern: Lege fest, welche Datei, welches Kommando, welcher Exit Code und welches Risiko betroffen sind.
  • 33. Secrets nie ausgeben oder committen: Lege fest, welche Datei, welches Kommando, welcher Exit Code und welches Risiko betroffen sind.
  • 34. PATH und externe Abhängigkeiten prüfen: Lege fest, welche Datei, welches Kommando, welcher Exit Code und welches Risiko betroffen sind.
  • 35. ShellCheck-Warnungen behandeln oder begründet unterdrücken: Lege fest, welche Datei, welches Kommando, welcher Exit Code und welches Risiko betroffen sind.
  • 36. Portabilitätsannahmen zwischen Bash und POSIX sh dokumentieren: Lege fest, welche Datei, welches Kommando, welcher Exit Code und welches Risiko betroffen sind.
  • 37. Shebang und Ziel-Shell eindeutig benennen: Lege fest, welche Datei, welches Kommando, welcher Exit Code und welches Risiko betroffen sind.
  • 38. alle Variablenzugriffe quoten, außer Wortaufspaltung ist bewusst nötig: Lege fest, welche Datei, welches Kommando, welcher Exit Code und welches Risiko betroffen sind.
  • 39. Eingaben validieren, bevor sie Dateinamen, Optionen oder Kommandos beeinflussen: Lege fest, welche Datei, welches Kommando, welcher Exit Code und welches Risiko betroffen sind.
  • 40. Exit Codes explizit auswerten und dokumentieren: Lege fest, welche Datei, welches Kommando, welcher Exit Code und welches Risiko betroffen sind.
  • 41. stderr und stdout trennen: Lege fest, welche Datei, welches Kommando, welcher Exit Code und welches Risiko betroffen sind.
  • 42. temporäre Dateien mit mktemp erzeugen: Lege fest, welche Datei, welches Kommando, welcher Exit Code und welches Risiko betroffen sind.
  • 43. Cleanup über trap testen: Lege fest, welche Datei, welches Kommando, welcher Exit Code und welches Risiko betroffen sind.
  • 44. destruktive Operationen mit Dry-Run, Scope-Prüfung und Bestätigung absichern: Lege fest, welche Datei, welches Kommando, welcher Exit Code und welches Risiko betroffen sind.
  • 45. Secrets nie ausgeben oder committen: Lege fest, welche Datei, welches Kommando, welcher Exit Code und welches Risiko betroffen sind.
  • 46. PATH und externe Abhängigkeiten prüfen: Lege fest, welche Datei, welches Kommando, welcher Exit Code und welches Risiko betroffen sind.
  • 47. ShellCheck-Warnungen behandeln oder begründet unterdrücken: Lege fest, welche Datei, welches Kommando, welcher Exit Code und welches Risiko betroffen sind.
  • 48. Portabilitätsannahmen zwischen Bash und POSIX sh dokumentieren: Lege fest, welche Datei, welches Kommando, welcher Exit Code und welches Risiko betroffen sind.
  • 49. Shebang und Ziel-Shell eindeutig benennen: Lege fest, welche Datei, welches Kommando, welcher Exit Code und welches Risiko betroffen sind.
  • 50. alle Variablenzugriffe quoten, außer Wortaufspaltung ist bewusst nötig: Lege fest, welche Datei, welches Kommando, welcher Exit Code und welches Risiko betroffen sind.
04 / 05

Praxisanhang: Übungen Intermediate

Dieser Anhang ist ein Arbeitsvorrat für längere Trainings, Reviews und Wiederholungen. Jede Aufgabe lässt sich lokal mit Bash, Testdaten und einem Git-Repository prüfen.

A001. Quoting

  • Arbeitsauftrag: Eingabe validieren und beziehe die Beobachtung ausdrücklich auf Quoting.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A002. Exit Codes

  • Arbeitsauftrag: Exit Code erklären und beziehe die Beobachtung ausdrücklich auf Exit Codes.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A003. Pipelines

  • Arbeitsauftrag: Quoting prüfen und beziehe die Beobachtung ausdrücklich auf Pipelines.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A004. getopts

  • Arbeitsauftrag: Fehlerpfad testen und beziehe die Beobachtung ausdrücklich auf getopts.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A005. trap

  • Arbeitsauftrag: Logausgabe bewerten und beziehe die Beobachtung ausdrücklich auf trap.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A006. mktemp

  • Arbeitsauftrag: Cleanup nachvollziehen und beziehe die Beobachtung ausdrücklich auf mktemp.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A007. Textverarbeitung

  • Arbeitsauftrag: Portabilität abgrenzen und beziehe die Beobachtung ausdrücklich auf Textverarbeitung.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A008. Security

  • Arbeitsauftrag: Security-Risiko markieren und beziehe die Beobachtung ausdrücklich auf Security.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A009. Quoting

  • Arbeitsauftrag: Recovery-Pfad dokumentieren und beziehe die Beobachtung ausdrücklich auf Quoting.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A010. Exit Codes

  • Arbeitsauftrag: Review-Regel formulieren und beziehe die Beobachtung ausdrücklich auf Exit Codes.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A011. Pipelines

  • Arbeitsauftrag: Eingabe validieren und beziehe die Beobachtung ausdrücklich auf Pipelines.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A012. getopts

  • Arbeitsauftrag: Exit Code erklären und beziehe die Beobachtung ausdrücklich auf getopts.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A013. trap

  • Arbeitsauftrag: Quoting prüfen und beziehe die Beobachtung ausdrücklich auf trap.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A014. mktemp

  • Arbeitsauftrag: Fehlerpfad testen und beziehe die Beobachtung ausdrücklich auf mktemp.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A015. Textverarbeitung

  • Arbeitsauftrag: Logausgabe bewerten und beziehe die Beobachtung ausdrücklich auf Textverarbeitung.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A016. Security

  • Arbeitsauftrag: Cleanup nachvollziehen und beziehe die Beobachtung ausdrücklich auf Security.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A017. Quoting

  • Arbeitsauftrag: Portabilität abgrenzen und beziehe die Beobachtung ausdrücklich auf Quoting.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A018. Exit Codes

  • Arbeitsauftrag: Security-Risiko markieren und beziehe die Beobachtung ausdrücklich auf Exit Codes.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A019. Pipelines

  • Arbeitsauftrag: Recovery-Pfad dokumentieren und beziehe die Beobachtung ausdrücklich auf Pipelines.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A020. getopts

  • Arbeitsauftrag: Review-Regel formulieren und beziehe die Beobachtung ausdrücklich auf getopts.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A021. trap

  • Arbeitsauftrag: Eingabe validieren und beziehe die Beobachtung ausdrücklich auf trap.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A022. mktemp

  • Arbeitsauftrag: Exit Code erklären und beziehe die Beobachtung ausdrücklich auf mktemp.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A023. Textverarbeitung

  • Arbeitsauftrag: Quoting prüfen und beziehe die Beobachtung ausdrücklich auf Textverarbeitung.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A024. Security

  • Arbeitsauftrag: Fehlerpfad testen und beziehe die Beobachtung ausdrücklich auf Security.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A025. Quoting

  • Arbeitsauftrag: Logausgabe bewerten und beziehe die Beobachtung ausdrücklich auf Quoting.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A026. Exit Codes

  • Arbeitsauftrag: Cleanup nachvollziehen und beziehe die Beobachtung ausdrücklich auf Exit Codes.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A027. Pipelines

  • Arbeitsauftrag: Portabilität abgrenzen und beziehe die Beobachtung ausdrücklich auf Pipelines.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A028. getopts

  • Arbeitsauftrag: Security-Risiko markieren und beziehe die Beobachtung ausdrücklich auf getopts.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A029. trap

  • Arbeitsauftrag: Recovery-Pfad dokumentieren und beziehe die Beobachtung ausdrücklich auf trap.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A030. mktemp

  • Arbeitsauftrag: Review-Regel formulieren und beziehe die Beobachtung ausdrücklich auf mktemp.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A031. Textverarbeitung

  • Arbeitsauftrag: Eingabe validieren und beziehe die Beobachtung ausdrücklich auf Textverarbeitung.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A032. Security

  • Arbeitsauftrag: Exit Code erklären und beziehe die Beobachtung ausdrücklich auf Security.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A033. Quoting

  • Arbeitsauftrag: Quoting prüfen und beziehe die Beobachtung ausdrücklich auf Quoting.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A034. Exit Codes

  • Arbeitsauftrag: Fehlerpfad testen und beziehe die Beobachtung ausdrücklich auf Exit Codes.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A035. Pipelines

  • Arbeitsauftrag: Logausgabe bewerten und beziehe die Beobachtung ausdrücklich auf Pipelines.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A036. getopts

  • Arbeitsauftrag: Cleanup nachvollziehen und beziehe die Beobachtung ausdrücklich auf getopts.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A037. trap

  • Arbeitsauftrag: Portabilität abgrenzen und beziehe die Beobachtung ausdrücklich auf trap.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A038. mktemp

  • Arbeitsauftrag: Security-Risiko markieren und beziehe die Beobachtung ausdrücklich auf mktemp.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A039. Textverarbeitung

  • Arbeitsauftrag: Recovery-Pfad dokumentieren und beziehe die Beobachtung ausdrücklich auf Textverarbeitung.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A040. Security

  • Arbeitsauftrag: Review-Regel formulieren und beziehe die Beobachtung ausdrücklich auf Security.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A041. Quoting

  • Arbeitsauftrag: Eingabe validieren und beziehe die Beobachtung ausdrücklich auf Quoting.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A042. Exit Codes

  • Arbeitsauftrag: Exit Code erklären und beziehe die Beobachtung ausdrücklich auf Exit Codes.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A043. Pipelines

  • Arbeitsauftrag: Quoting prüfen und beziehe die Beobachtung ausdrücklich auf Pipelines.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A044. getopts

  • Arbeitsauftrag: Fehlerpfad testen und beziehe die Beobachtung ausdrücklich auf getopts.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A045. trap

  • Arbeitsauftrag: Logausgabe bewerten und beziehe die Beobachtung ausdrücklich auf trap.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A046. mktemp

  • Arbeitsauftrag: Cleanup nachvollziehen und beziehe die Beobachtung ausdrücklich auf mktemp.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A047. Textverarbeitung

  • Arbeitsauftrag: Portabilität abgrenzen und beziehe die Beobachtung ausdrücklich auf Textverarbeitung.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A048. Security

  • Arbeitsauftrag: Security-Risiko markieren und beziehe die Beobachtung ausdrücklich auf Security.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A049. Quoting

  • Arbeitsauftrag: Recovery-Pfad dokumentieren und beziehe die Beobachtung ausdrücklich auf Quoting.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A050. Exit Codes

  • Arbeitsauftrag: Review-Regel formulieren und beziehe die Beobachtung ausdrücklich auf Exit Codes.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A051. Pipelines

  • Arbeitsauftrag: Eingabe validieren und beziehe die Beobachtung ausdrücklich auf Pipelines.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A052. getopts

  • Arbeitsauftrag: Exit Code erklären und beziehe die Beobachtung ausdrücklich auf getopts.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A053. trap

  • Arbeitsauftrag: Quoting prüfen und beziehe die Beobachtung ausdrücklich auf trap.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A054. mktemp

  • Arbeitsauftrag: Fehlerpfad testen und beziehe die Beobachtung ausdrücklich auf mktemp.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A055. Textverarbeitung

  • Arbeitsauftrag: Logausgabe bewerten und beziehe die Beobachtung ausdrücklich auf Textverarbeitung.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A056. Security

  • Arbeitsauftrag: Cleanup nachvollziehen und beziehe die Beobachtung ausdrücklich auf Security.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A057. Quoting

  • Arbeitsauftrag: Portabilität abgrenzen und beziehe die Beobachtung ausdrücklich auf Quoting.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A058. Exit Codes

  • Arbeitsauftrag: Security-Risiko markieren und beziehe die Beobachtung ausdrücklich auf Exit Codes.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A059. Pipelines

  • Arbeitsauftrag: Recovery-Pfad dokumentieren und beziehe die Beobachtung ausdrücklich auf Pipelines.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A060. getopts

  • Arbeitsauftrag: Review-Regel formulieren und beziehe die Beobachtung ausdrücklich auf getopts.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A061. trap

  • Arbeitsauftrag: Eingabe validieren und beziehe die Beobachtung ausdrücklich auf trap.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A062. mktemp

  • Arbeitsauftrag: Exit Code erklären und beziehe die Beobachtung ausdrücklich auf mktemp.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A063. Textverarbeitung

  • Arbeitsauftrag: Quoting prüfen und beziehe die Beobachtung ausdrücklich auf Textverarbeitung.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A064. Security

  • Arbeitsauftrag: Fehlerpfad testen und beziehe die Beobachtung ausdrücklich auf Security.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A065. Quoting

  • Arbeitsauftrag: Logausgabe bewerten und beziehe die Beobachtung ausdrücklich auf Quoting.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A066. Exit Codes

  • Arbeitsauftrag: Cleanup nachvollziehen und beziehe die Beobachtung ausdrücklich auf Exit Codes.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A067. Pipelines

  • Arbeitsauftrag: Portabilität abgrenzen und beziehe die Beobachtung ausdrücklich auf Pipelines.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A068. getopts

  • Arbeitsauftrag: Security-Risiko markieren und beziehe die Beobachtung ausdrücklich auf getopts.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A069. trap

  • Arbeitsauftrag: Recovery-Pfad dokumentieren und beziehe die Beobachtung ausdrücklich auf trap.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A070. mktemp

  • Arbeitsauftrag: Review-Regel formulieren und beziehe die Beobachtung ausdrücklich auf mktemp.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A071. Textverarbeitung

  • Arbeitsauftrag: Eingabe validieren und beziehe die Beobachtung ausdrücklich auf Textverarbeitung.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A072. Security

  • Arbeitsauftrag: Exit Code erklären und beziehe die Beobachtung ausdrücklich auf Security.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A073. Quoting

  • Arbeitsauftrag: Quoting prüfen und beziehe die Beobachtung ausdrücklich auf Quoting.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A074. Exit Codes

  • Arbeitsauftrag: Fehlerpfad testen und beziehe die Beobachtung ausdrücklich auf Exit Codes.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A075. Pipelines

  • Arbeitsauftrag: Logausgabe bewerten und beziehe die Beobachtung ausdrücklich auf Pipelines.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A076. getopts

  • Arbeitsauftrag: Cleanup nachvollziehen und beziehe die Beobachtung ausdrücklich auf getopts.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A077. trap

  • Arbeitsauftrag: Portabilität abgrenzen und beziehe die Beobachtung ausdrücklich auf trap.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A078. mktemp

  • Arbeitsauftrag: Security-Risiko markieren und beziehe die Beobachtung ausdrücklich auf mktemp.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A079. Textverarbeitung

  • Arbeitsauftrag: Recovery-Pfad dokumentieren und beziehe die Beobachtung ausdrücklich auf Textverarbeitung.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A080. Security

  • Arbeitsauftrag: Review-Regel formulieren und beziehe die Beobachtung ausdrücklich auf Security.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A081. Quoting

  • Arbeitsauftrag: Eingabe validieren und beziehe die Beobachtung ausdrücklich auf Quoting.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A082. Exit Codes

  • Arbeitsauftrag: Exit Code erklären und beziehe die Beobachtung ausdrücklich auf Exit Codes.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A083. Pipelines

  • Arbeitsauftrag: Quoting prüfen und beziehe die Beobachtung ausdrücklich auf Pipelines.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A084. getopts

  • Arbeitsauftrag: Fehlerpfad testen und beziehe die Beobachtung ausdrücklich auf getopts.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A085. trap

  • Arbeitsauftrag: Logausgabe bewerten und beziehe die Beobachtung ausdrücklich auf trap.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A086. mktemp

  • Arbeitsauftrag: Cleanup nachvollziehen und beziehe die Beobachtung ausdrücklich auf mktemp.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A087. Textverarbeitung

  • Arbeitsauftrag: Portabilität abgrenzen und beziehe die Beobachtung ausdrücklich auf Textverarbeitung.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A088. Security

  • Arbeitsauftrag: Security-Risiko markieren und beziehe die Beobachtung ausdrücklich auf Security.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A089. Quoting

  • Arbeitsauftrag: Recovery-Pfad dokumentieren und beziehe die Beobachtung ausdrücklich auf Quoting.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.

A090. Exit Codes

  • Arbeitsauftrag: Review-Regel formulieren und beziehe die Beobachtung ausdrücklich auf Exit Codes.
  • Nachweis: Notiere das geprüfte Kommando, erwartete Ausgabe, tatsächliche Ausgabe und Exit Code.
  • Betriebsfrage: Was passiert bei leerer Eingabe, fehlender Datei, fehlendem Tool und wiederholter Ausführung?
  • Security-Frage: Kann Input als Option, Pfad, Glob, Subshell, eval-Ausdruck oder Secret-Leak wirken?
  • Recovery: Beschreibe Revert, Cleanup, Restore, Secret-Rotation oder manuelle Korrektur.
05 / 05

SH · Orthevs Academy

31 Module als durchgängiger Lernpfad.

Die Reihenfolge bleibt unverändert: von der Laborgrundstruktur über fachliche Grundlagen und Betriebsmodelle bis zum abschließenden Troubleshooting. Die technischen Verzeichnisnamen werden bewusst beibehalten.

Orthevs – Engineering als Grundlage für das, was als Nächstes kommt.

Orthevs als App

Orthevs installieren

Die Orthevs Web-App kann auf unterstützten Mobilgeräten und Desktop-Browsern installiert werden.

iPhone und iPad

Öffnen Sie Orthevs in Safari. Tippen Sie auf Teilen, dann auf ‚Zum Home-Bildschirm‘. Aktivieren Sie gegebenenfalls ‚Als Web-App öffnen‘ und tippen Sie auf ‚Hinzufügen‘.

Android

Für die Web-App öffnen Sie das Browsermenü und wählen ‚App installieren‘ oder ‚Zum Startbildschirm hinzufügen‘. Bestätigen Sie die Installation.

Desktop-Browser

Öffnen Sie das Browsermenü oder das Installationssymbol in der Adressleiste und wählen Sie ‚App installieren‘ beziehungsweise ‚Zum Dock hinzufügen‘.

Die Web-App-Installation hängt vom Browser ab. Falls kein Installationsdialog erscheint, nutzen Sie die angezeigten Schritte im Browser.