Was macht Cron Dispatch?
Verwenden Sie diesen Skill, wenn ein Skript unbeaufsichtigt nach einem Zeitplan ausgeführt werden muss und dasselbe Muster sowohl auf einem Windows-Entwicklungsrechner als auch auf einem Linux-Server funktionieren soll. Er bietet eine „Copy-Paste“-Einrichtung für den Windows Task Scheduler und Linux cron, inklusive Logging und einem Überlappungsschutz, sodass ein langsamer Lauf nie auf dem nächsten Tick aufbaut.
Wann aufrufen
- Der Benutzer sagt: „führe dies nächtlich aus“ / „richte einen Cron-Job ein“ / „plane ein Skript ein“ / „Windows Task Scheduler“
- Der Code im Gespräch verwendet: ein eigenständiges Skript (Python, Node, Shell), das zeitgesteuert statt manuell ausgeführt werden soll.
Wann NICHT aufrufen
- Die Arbeit gehört in einen vorhandenen, ständig laufenden Dienst oder eine Ereignisschleife, nicht in einen Betriebssystem-Planer.
- Der Benutzer wünscht einen verwalteten Cloud-Planer (GitHub Actions Cron, Cloud Functions) statt einer lokalen Maschine.
Konkretes Beispiel
Benutzereingabe:
Führe mein scraper.py jeden Tag um 9 Uhr auf Windows aus und gib mir später die Linux-Cron-Zeile für den Server.
Ausgabe:
# Windows: tägliche 09:00-Aufgabe registrieren (vom Repository-Root aus ausführen)
powershell -ExecutionPolicy Bypass -File assets/setup_task.ps1 `
-TaskName "scraper-daily" `
-Command "python" `
-Arguments "E:\proj\scraper.py" `
-Time "09:00"
# Linux: gleicher Job, täglich 09:00, geloggt, keine Überlappung
0 9 * * * cd /srv/proj && flock -n /tmp/scraper.lock python scraper.py >> /srv/proj/cron.log 2>&1
Anzuwendendes Muster
- Wählen Sie einen Planungsausdruck und übersetzen Sie ihn sowohl in Task Scheduler-Trigger als auch in eine 5-Felder-Cron-Zeile.
- Führen Sie das Skript immer aus seinem Projektverzeichnis aus, damit relative Pfade aufgelöst werden.
- Leiten Sie stdout und stderr an eine Log-Datei um; verlassen Sie sich niemals auf eine Konsole, die niemand beobachtet.
- Schützen Sie vor Überlappung (
flockunter Linux,-MultipleInstances IgnoreNewunter Windows), damit ein langer Lauf sich nicht verdoppelt. - Registrieren, auflisten und entfernen Sie Jobs über einen stabilen Task-Namen, sodass eine erneute Einrichtung idempotent bleibt.
Referenz: assets/setup_task.ps1, assets/cron_linux.sh.
Quelle
Destilliert aus dem produktiven Einsatz in den Automatisierungsprojekten des Autors. v1.0.0. Siehe auch: [[pipeline-orchestrator]], [[telegram-alerter]].
→ Erstellen Sie den vollständig ausführbaren Bot mit Trawlkit.