Cron-Ausdrucks-Generator

0-59

0-23

1-31

1-12

0-7 (0,7=Sonntag)

Nächste

Die Cron-Syntax ist kurz und leicht falsch zu verstehen: 0 */6 * * * läuft alle sechs Stunden, während */6 0 * * * zehnmal ausgeführt wird, nur während der ersten Stunde nach Mitternacht. Dieser Generator ermöglicht es Ihnen, einen Zeitplan visuell auszuwählen (alle 15 Minuten, Wochentage um 9 Uhr, der 1. jedes Monats) und gibt den genauen Ausdruck aus, zusammen mit einer verständlichen Beschreibung seiner Bedeutung.

So erstellen Sie einen Cron-Ausdruck

  1. 1

    Wählen Sie eine Vorlage oder geben Sie die Felder ein

    Jede Minute, jede Stunde, täglich um Mitternacht, wöchentlich am Sonntag und am 1. jedes Monats mit einem Klick. Für alles andere tragen Sie die Werte direkt in die fünf Felder ein.

  2. 2

    Verfeinern Sie den Zeitplan

    Bestimmte Minuten, Stunden, Tage des Monats, Monate, Wochentage. Bereiche (9-17), Listen (1,15) und Schritte (*/6) werden alle unterstützt.

  3. 3

    Lesen Sie den Ausdruck

    Der Generator gibt immer das Standard-5-Felder-Cron-Format aus, zusammen mit einer verständlichen Beschreibung des Zeitplans.

  4. 4

    Prüfen Sie den Dialekt

    Die Dialekte unterscheiden sich (Quartz, AWS EventBridge, Kubernetes). Vergewissern Sie sich, dass der Ausdruck dem entspricht, was Ihr Scheduler erwartet.

Die fünf Felder

*  *  *  *  *
│  │  │  │  │
│  │  │  │  └── Wochentag (0-6, Sonntag=0, oder SUN-SAT)
│  │  │  └───── Monat (1-12, oder JAN-DEC)
│  │  └──────── Tag des Monats (1-31)
│  └─────────── Stunde (0-23)
└────────────── Minute (0-59)

Jedes Feld akzeptiert:

  • Eine bestimmte Zahl: 5
  • Eine Liste: 1,15,30
  • Einen Bereich: 9-17
  • Einen Schritt: */10 (alle 10) oder 0-30/5 (alle 5 von 0 bis 30)
  • Platzhalter: * (jeder Wert)

Häufige Ausdrücke

Zeitplan Cron-Ausdruck
Jede Minute * * * * *
Alle 15 Minuten */15 * * * *
Jede Stunde zur vollen Stunde 0 * * * *
Alle 6 Stunden 0 */6 * * *
Jeden Tag um 2:30 Uhr 30 2 * * *
Jeden Wochentag um 9 Uhr 0 9 * * 1-5
Jeden Montag um 8 Uhr 0 8 * * 1
Erster Tag jedes Monats, 3 Uhr 0 3 1 * *
Alle 15 Minuten, 9-17 Wochentage */15 9-17 * * 1-5
Mittags am 1. und 15. 0 12 1,15 * *
Jeden Sonntag um Mitternacht 0 0 * * 0

Die Falle bei Tag-des-Monats + Tag-der-Woche

In Standard-Cron, wenn beide Tag-des-Monats und Tag-der-Woche angegeben sind (nicht *), wird der Job ausgeführt, wenn einer übereinstimmt (ODER, nicht UND). 0 0 1 * MON läuft am 1. jedes Monats und an jedem Montag, nicht nur wenn der 1. ein Montag ist.

Vixie-Cron und die meisten Linux-Distributionen folgen dieser ODER-Regel. Quartz (Java) und einige andere verwenden UND. Im Zweifelsfall testen Sie den Ausdruck mit einem Testlauf oder einem Test-Job in Ihrem Scheduler.

Dialektunterschiede

  • Standard-Cron (Linux): 5 Felder, Tag-der-Woche 0-6 (Sonntag = 0 oder 7).
  • Quartz (Spring, Java-Apps): 6-7 Felder, mit Sekunden als Feld 1 und optionalem Jahr. Tag-der-Woche 1-7 (Sonntag = 1).
  • AWS EventBridge-Cron: 6 Felder, mit Jahr. Tag-der-Woche und Tag-des-Monats müssen gegenseitig ausschließend sein (einer muss ? sein).
  • GitHub Actions: standard 5-Felder, Mindestintervall 5 Minuten, nur UTC.
  • Kubernetes CronJob: standard 5-Felder, standardmäßig UTC.

Bestätigen Sie immer, welchen Dialekt Ihr Scheduler verwendet.

Zeitzonen

Klassisches Cron läuft in der lokalen Zeitzone des Servers. Das kann bei DST-Übergängen hart zuschlagen: Ein Job um 2:30 Uhr kann an Umschaltagen zweimal oder gar nicht ausgeführt werden. Moderne Scheduler (systemd-Timer, Kubernetes, EventBridge) ermöglichen es Ihnen, die Zeitzone explizit anzugeben, verwenden Sie UTC, es sei denn, Sie haben einen guten Grund, dies nicht zu tun.

Häufig gestellte Fragen

Alle 5 Einheiten des Feldes, beginnend bei 0. Im Minutenfeld wird */5 zu den Minuten 0, 5, 10, 15, …, 55 ausgelöst. Es ist eine Abkürzung für 0,5,10,15,20,25,30,35,40,45,50,55.

Cron kann willkürliche Intervalle, die sich nicht gleichmäßig in 60 Minuten oder 24 Stunden teilen, nicht ausdrücken. Für 90 Minuten listen Sie die spezifischen Ausführungszeiten auf: 0 0,9 * * * kombiniert mit zusätzlichen Zeilen oder wechseln Sie zu einem Scheduler, der willkürliche Intervalle unterstützt (systemd-Timer, anacron).

Mitternacht. Die Feldreihenfolge ist Minute-Stunde, also bedeutet 0 0 “Minute 0 der Stunde 0”. Mittag wäre 0 12 * * *.

Standard-Cron überspringt es, versäumte Ausführungen werden nicht wiederholt. Anacron erfasst versäumte tägliche/wöchentliche/monatliche Jobs beim nächsten Boot. Kubernetes CronJobs haben startingDeadlineSeconds und concurrencyPolicy, um versäumte Zeitfenster explizit zu behandeln.

Verwandte Tools