Cron-Ausdruck-Generator & -Erklärer
Cron-Ausdrücke visuell Feld für Feld bauen oder einen bestehenden einfügen für eine Klartext-Erklärung und die nächsten fünf Ausführungszeiten.
Was ist ein Cron-Ausdruck?
Ein Cron-Ausdruck ist ein Zeitplan mit fünf Feldern, der von Unix-artigen Task-Schedulern, CI-Systemen, Kubernetes CronJobs, AWS EventBridge, GitHub Actions und den meisten modernen Job-Runnern verwendet wird. Jedes Feld steuert eine Zeiteinheit – Minute, Stunde, Tag des Monats, Monat und Wochentag – und unterstützt vier Kurzschreibweisen: * (beliebig), eine kommagetrennte Liste (0,15,30,45), einen Bereich (1-5) und einen Schritt (*/10). Kombiniere sie und du kannst nahezu jeden wiederkehrenden Zeitplan beschreiben, ohne einen Kalender von Hand zu pflegen.
So nutzen Sie diesen Generator
Wähle eine Voreinstellung als sofortigen Ausgangspunkt oder baue den Ausdruck Feld für Feld auf. Jedes Feld hat vier Modi: Jede erzeugt *; Bestimmte Liste nimmt kommagetrennte Werte; Bereich nimmt ein Start-Ende-Paar; Schritt nimmt ein Intervall (*/N) mit einem optionalen Startversatz. Der Ausdruck und eine Beschreibung in einfacher Sprache aktualisieren sich live, sobald du etwas änderst. Für den umgekehrten Weg fügst du einen Cron-String unten in das Parser-Feld ein – das Tool dekodiert ihn in eine menschenlesbare Form und zeigt dir die nächsten fünf Ausführungszeitpunkte in deiner lokalen Zeitzone.
Feld-Referenz
Minute: 0–59. Stunde: 0–23. Tag des Monats: 1–31. Monat: 1–12 (Januar = 1). Wochentag: 0–6, wobei Sonntag = 0 im klassischen Unix-Cron – 7 wird in den meisten modernen Parsern ebenfalls als Sonntag akzeptiert. Wenn sowohl Tag des Monats als auch Wochentag auf Werte ungleich * gesetzt werden, löst klassisches Cron bei EINER der Bedingungen aus (logisches ODER), was viele Leute überrascht. Wähle eines von beiden für vorhersehbares Verhalten.
Häufig gestellte Fragen
Passt das zu Quartz / Spring Cron?
0 präfixieren, um eine Quartz-kompatible Zeichenfolge zu erhalten. Spezielle Tokens wie L (last) und W (weekday) sind jedoch Quartz-exklusiv und tauchen hier nicht auf.Wie berechnet der Erklärer die nächsten Ausführungen?
Was ist mit Zeitzonen?
crond verwendet die Systemzeitzone, AWS EventBridge ist standardmäßig auf UTC eingestellt, GitHub Actions nutzt UTC, Kubernetes verwendet die Cluster-Zeitzone. Bestätige immer die Zeitzone deines Runners, bevor du etwas deployst.Wie drücke ich „den letzten Tag des Monats“ aus?
59 23 28-31 * *, was ab dem 28. jeden Tag um 23:59 ausgelöst wird. Der Job selbst sollte date -d 'tomorrow' +%-d = 1 (oder das Äquivalent in deiner Sprache) prüfen und überspringen, falls es nicht tatsächlich Monatsende ist. Quartz-Cron unterstützt dafür L – aber Quartz-Ausdrücke laufen nicht auf einfachem Linux-Cron.Kann ich einen Job alle 90 Minuten ausführen?
*/90 nicht. Der naheliegendste Workaround sind zwei Ausdrücke: 0 0,3,6,9,12,15,18,21 * * * und 30 1,4,7,10,13,16,19,22 * * *, die zusammen alle 90 Minuten auslösen. Noch einfacher: alle 30 Minuten planen und im Skript mit exit 0 beenden, wenn es nicht der richtige Slot ist.Warum löst mein Job bei der Sommerzeitumstellung zweimal aus?
cron.timezone = 'UTC' oder TZ=UTC in der Crontab setzen) und konvertiere innerhalb des Jobs in die Lokalzeit – UTC kennt keine Sommerzeit.