Cron-Ausdruck-Erklärer
Jeden Cron-Ausdruck in Klartext lesen, Feld für Feld, und genau sehen, wann er als Nächstes läuft.
Cron-Ausdruck-Erklärer - was Ihre Crontab-Zeile wirklich bedeutet
Fügen Sie einen Cron-Ausdruck ein und lesen Sie ihn als verständlichen Satz, sehen Sie jedes der fünf Felder einzeln und prüfen Sie die nächsten Ausführungszeiten in Ihrer eigenen Zeitzone oder in UTC. Das Werkzeug erkennt die Fehler, durch die ein Job zur falschen Zeit läuft: einen Wert außerhalb des Bereichs, einen aus Quartz kopierten Ausdruck mit sechs Feldern oder einen Zeitplan, der nie eintreten kann, etwa der 31. Februar.
Cron ist der Scheduler hinter den Crontabs von Linux und macOS, und seine Syntax nutzen auch Kubernetes-CronJobs, GitHub Actions, GitLab CI und die meisten Cloud-Scheduler. Die Syntax ist kompakt und leicht falsch zu lesen; ein kurzer Check hier bewahrt Sie vor einem Job, der jede Minute statt einmal am Tag läuft.
So verwenden Sie das Werkzeug
- Geben Sie einen Cron-Ausdruck ein oder fügen Sie ihn ein, oder wählen Sie einen unter Häufige Zeitpläne.
- Lesen Sie die Beschreibung und die fünf Felder darunter.
- Prüfen Sie die Liste Nächste Ausführungen; schalten Sie die Zeitzone zwischen Dieses Gerät und UTC um.
- Ist ein Feld rot umrandet, sagt die Meldung darüber, was nicht stimmt.
Die fünf Felder
| Feld | Erlaubte Werte | Beispiel | Bedeutung |
|---|---|---|---|
| Minute | 0–59 | 30 | In Minute 30 |
| Stunde | 0–23 | 9-17 | Von 09:00 bis 17:59 |
| Tag des Monats | 1–31 | 1,15 | Am 1. und am 15. |
| Monat | 1–12 oder JAN–DEC | */3 | Januar, April, Juli, Oktober |
| Wochentag | 0–6 oder SUN–SAT (7 = Sonntag) | 1-5 | Montag bis Freitag |
Sonderzeichen
*steht für jeden Wert des Feldes.,trennt eine Liste:1,15,30.-gibt einen Bereich an:9-17./gibt eine Schrittweite an:*/15ist jeder 15. Wert ab dem kleinsten,5/15jeder 15. ab 5.- Makros ersetzen die ganze Zeile:
@hourly,@daily,@weekly,@monthly,@yearly.
Die Falle mit Tag des Monats und Wochentag
Sind beide Tagesfelder eingeschränkt, führt Standard-Cron den Job an jedem Tag aus, der eines der beiden erfüllt, nicht beide. 0 0 1 * 1 läuft um Mitternacht am 1. jedes Monats und zusätzlich jeden Montag. Erwartet wird meist „Montage, die auf den 1. fallen“, was klassisches Cron gar nicht ausdrücken kann. Das Werkzeug blendet einen Hinweis ein, sobald beide Felder gesetzt sind, und die Liste der nächsten Ausführungen macht das tatsächliche Verhalten offensichtlich.
Zeitzonen
Cron verwendet die Zeitzone der Maschine oder des Dienstes, der ihn ausführt. Server und Cloud-Scheduler wie GitHub Actions laufen meist in UTC, ein für 09:00 geschriebener Job startet also womöglich um 09:00 UTC, was an den meisten Orten eine andere Stunde ist, und er verschiebt sich um eine Stunde, wenn dort, wo Sie leben, die Sommerzeit beginnt oder endet. Vergleichen Sie die nächsten Ausführungen für Dieses Gerät und UTC, um den Unterschied vor dem Deployment zu sehen.
Was dieses Werkzeug nicht unterstützt
- Sekunden: Ausdrücke mit sechs oder sieben Feldern aus Quartz und Spring werden gemeldet statt falsch gelesen.
- Nicht standardisierte Erweiterungen wie
L,Wund#, die manche Scheduler ergänzen. @reboot, das einmal beim Systemstart läuft und keinen nächsten Zeitpunkt hat.
Verwandte Werkzeuge
Um eine Ausführungszeit in einen Unix-Timestamp umzuwandeln oder umgekehrt, nutzen Sie den Unix-Timestamp-Konverter. Die Aufgabenseiten öffnen dieses Werkzeug mit einem gängigen Zeitplan: alle 5 Minuten, jede Stunde und täglich um Mitternacht.