Dateien und Ordner automatisieren
Baue Python-Skripte, die Dateien in Ordner sortieren, in Masse umbenennen, automatische Backups erstellen und Verzeichnisse überwachen — alles mit KI-Hilfe.
🔄 Kurzer Rückblick: In der letzten Lektion hast du gelernt, warum Python ideal für Automatisierung ist und wie KI Skripte aus natürlichsprachlichen Beschreibungen generiert. Jetzt bauen wir deine erste echte Automatisierung — Dateien organisieren und verwalten.
Dateiverwaltung ist der klassische Einstieg in die Automatisierung: Die Ergebnisse sind sofort sichtbar, das Risiko ist niedrig (du kannst Dateien immer zurückverschieben) und jeder hat einen chaotischen Downloads-Ordner. Tja, fangen wir an.
Skript 1: Datei-Organizer nach Typ
KI-Prompt:
Schreib ein Python-Skript mit pathlib, das Dateien in einem Ordner nach Dateityp in Unterordner sortiert. Regeln: (1) Bilder (.jpg, .png, .gif, .webp, .svg) → „Bilder/", (2) Dokumente (.pdf, .docx, .xlsx, .pptx, .txt) → „Dokumente/", (3) Videos (.mp4, .mov, .avi, .mkv) → „Videos/", (4) Archive (.zip, .tar, .gz, .rar) → „Archive/", (5) Alles andere → „Sonstiges/". Inklusive: Dry-Run-Modus, CSV-Logging, versteckte Dateien überspringen, doppelte Dateinamen mit _1, _2 usw. behandeln. Benutze argparse für Kommandozeilenargumente.
Wichtige pathlib-Operationen für Dateiautomatisierung:
| Operation | pathlib-Code | Was es tut |
|---|---|---|
| Dateien auflisten | Path(folder).iterdir() | Alle Elemente durchgehen |
| Nach Typ filtern | Path(folder).glob("*.pdf") | Dateien nach Muster finden |
| Endung holen | path.suffix | Gibt .pdf, .jpg usw. zurück |
| Dateiname holen | path.stem | Dateiname ohne Endung |
| Datei verschieben | path.rename(new_path) | Verschieben oder umbenennen |
| Ordner erstellen | path.mkdir(parents=True, exist_ok=True) | Verschachtelte Ordner sicher anlegen |
Skript 2: Massen-Umbenennung
KI-Prompt:
Schreib ein Python-Skript zum Massenumbenennen von Dateien. Unterstütze: (1) Datums-Präfix aus Datei-Metadaten: IMG_1234.jpg → 2026-01-15_IMG_1234.jpg, (2) Text ersetzen in Dateinamen: „Screenshot_" → „screen-", (3) Sequenzielle Nummerierung: foto.jpg → urlaub_001.jpg. Inklusive: Preview-Modus (zeigt alt → neu ohne umzubenennen), Undo-Funktion (speichert eine Mapping-Datei zum Rückgängigmachen), überspringt Dateien die bereits dem Muster entsprechen.
Das Preview-dann-Ausführen-Muster:
# Dieses Muster gilt für ALLE destruktiven Automatisierungen
changes = []
for file in folder.glob("*"):
new_name = generate_new_name(file)
changes.append((file, new_name))
# Vorschau
for old, new in changes:
print(f" {old.name} → {new.name}")
# Bestätigung
if input("Ausführen? (j/n): ").lower() == "j":
for old, new in changes:
old.rename(new)
Skript 3: Automatisches Backup
KI-Prompt:
Schreib ein Python-Skript, das einen Ordner ins Format backup_JJJJ-MM-TT_HHMMSS/ sichert. Inklusive: (1) Nur seit dem letzten Backup geänderte Dateien kopieren (inkrementelles Backup), (2) Dateien gemäß .backupignore überspringen (wie .gitignore), (3) Zusammenfassung: kopierte Dateien, Gesamtgröße, Dauer, (4) Option zum Komprimieren als .zip. Benutze shutil und argparse.
Essentielle Muster für Dateiautomatisierung
| Muster | Wann nutzen | Beispiel |
|---|---|---|
| Dry-Run-Modus | Jedes Skript das Dateien ändert | Vorschau vor Ausführung |
| Logging | Skripte mit vielen Dateien | CSV-Log jeder Aktion zur Fehlersuche |
| Fehlerfortsetzung | Batch-Operationen | try/except pro Datei, nicht bei einem Fehler stoppen |
| Duplikat-Behandlung | Verschieben/Kopieren | _1, _2 oder Zeitstempel anhängen |
| Undo-Funktion | Umbenennungen | Alt→Neu-Mapping zum Rückgängigmachen speichern |
✅ Quick Check: Dein Skript muss eine Datei namens
mein Lebenslauf (final).pdfverarbeiten — mit Leerzeichen und Klammern. Schafft pathlib das? (Antwort: Ja, pathlib behandelt Unicode, Leerzeichen und Sonderzeichen korrekt auf allen Betriebssystemen. Der häufige Fehler ist String-Verkettung statt pathlibs/-Operator:Path(folder) / filenamebehandelt Sonderzeichen sicher.)
Key Takeaways
- Immer einen Dry-Run-Modus einbauen — Vorschau vor Ausführung schützt vor Datenverlust und lässt dich Grenzfälle wie Duplikate, Sonderzeichen und Dateien ohne Endung vorher erkennen
- Benutze pathlib (nicht os.path) für moderne, lesbare Dateioperationen — Pfade als Objekte, automatische Plattform-Kompatibilität und Code der sich wie Englisch liest
- Teste Datei-Skripte an einer kleinen Kopie, bevor du sie auf echte Daten loslässt — die Progression Dry-Run → Kopie-Test → echter Ordner fängt Probleme sicher ab
Up Next
In der nächsten Lektion lernst du Datenverarbeitung — CSV, Excel und JSON lesen, transformieren und schreiben mit KI-generierten pandas-Skripten.
Wissenscheck
Erst das Quiz oben abschließen
Lektion abgeschlossen!