Cronwise

Cron-Ausdruck-Grundlagen: Die 5 Felder verstehen

Eine verständliche Aufschlüsselung der Standard-Cron-Syntax, die Sie sofort anwenden können

Cron-Erklärer ausprobieren

Warum Cron-Ausdrücke selbst erfahrene Entwickler ins Stolpern bringen

Die meisten Cron-Fehler entstehen vor der Bereitstellung, wenn Planungsabsicht und Syntax auseinandergehen. Sie möchten, dass ein Job jeden Werktag um 8 Uhr ausgeführt wird, aber ein falsch platzierter Wert verschiebt ihn auf jede Stunde oder jeden Tag des Monats. Die Ursache ist fast immer dieselbe: Die fünf Felder eines Cron-Ausdrucks sind kompakt, positionsgebunden und unerbittlich.

Ein Standard-Cron-Ausdruck ist eine einzelne Zeile mit fünf durch Leerzeichen getrennten Feldern. Jedes Feld entspricht einer Zeiteinheit, und zusammen definieren sie einen wiederkehrenden Zeitplan. Es gibt keine Beschriftungen, standardmäßig keine Schlüsselwörter und keinen Spielraum für Mehrdeutigkeit, sobald der Scheduler die Zeile liest.

Dieser Artikel erklärt die Struktur des 5-Feld-Cron-Formats in verständlicher Sprache. Sie erfahren, was jedes Feld steuert, wie gängige Token funktionieren und wo typische Fehlinterpretationen auftreten. Jedes Beispiel kann sofort im Cronwise Cron-Erklärer überprüft werden, der Ihnen eine verständliche Aufschlüsselung und eine zeitzonenbewusste Vorschau der nächsten Ausführungen für jeden eingegebenen Ausdruck liefert.

Ob Sie Ihren ersten Crontab-Eintrag schreiben oder einen Zeitplan überprüfen, den jemand anderes erstellt hat – das Verständnis dieser fünf Felder ist die Grundlage für jeden weiteren Cron-Workflow.

Die fünf Felder: Was jedes einzelne steuert

Jeder Standard-Cron-Ausdruck folgt demselben positionellen Format. Von links nach rechts lauten die fünf Felder:

PositionFeldErlaubte WerteBeschreibung
1Minute0 – 59Die Minute der Stunde, in der der Job ausgeführt wird
2Stunde0 – 23Die Stunde des Tages (24-Stunden-Format)
3Tag des Monats1 – 31Der Kalendertag
4Monat1 – 12Der Monat des Jahres
5Wochentag0 – 7Der Wochentag (0 und 7 stehen beide für Sonntag)

Ein konkretes Beispiel verdeutlicht die Zuordnung. Der Ausdruck 30 8 * * 1-5 bedeutet: in Minute 30, der Stunde 8, an jedem Tag des Monats, in jedem Monat, aber nur an den Wochentagen Montag bis Freitag. In verständlicher Sprache: 8:30 Uhr, Montag bis Freitag.

Das Sternchen (*) ist ein Platzhalter, der jeden erlaubten Wert für dieses Feld abdeckt. Lesen Sie es als „jede/r/s“. Also bedeutet * * * * * jede Minute jeder Stunde jedes Tages — der häufigste mögliche Zeitplan in Standard-Cron.

Gängige Token und wie sie funktionieren

Neben dem Sternchen-Platzhalter unterstützen Cron-Felder mehrere Token, mit denen Sie Bereiche, Intervalle und Listen ausdrücken können, ohne separate Einträge zu schreiben.

Komma (Liste)

Ein Komma trennt einzelne Werte. 0 9,12,18 * * * wird um 9:00 Uhr, 12:00 Uhr und 18:00 Uhr jeden Tag ausgelöst. Jeder Wert in der Liste wird unabhängig behandelt.

Bindestrich (Bereich)

Ein Bindestrich definiert einen zusammenhängenden Bereich. 0 9-17 * * * wird zur vollen Stunde von 9:00 bis 17:00 Uhr ausgelöst. Bereiche sind an beiden Enden inklusive.

Schrägstrich (Schritt)

Ein Schrägstrich definiert ein Intervall. */15 * * * * wird alle 15 Minuten ausgelöst, beginnend bei Minute 0. Sie können einen Bereich mit einem Schritt kombinieren: 0-30/10 * * * * wird in den Minuten 0, 10, 20 und 30 jeder Stunde ausgelöst.

Token kombinieren

Token können innerhalb eines einzelnen Felds gemischt werden. 0 8-12,18 * * 1-5 wird zur vollen Stunde der Stunden 8 bis 12 und auch zur Stunde 18 ausgeführt, aber nur an Werktagen. Jedes Feld wird unabhängig ausgewertet, und der Scheduler löst aus, wenn alle fünf Felder gleichzeitig übereinstimmen.

Für eine ausführlichere Anleitung zu Lesestrategien lesen Sie Cron-Ausdrücke schnell lesen, das mentale Modelle für das schnelle Analysieren von Ausdrücken behandelt.

Reale Zeitpläne interpretieren

Einen Cron-Ausdruck korrekt zu lesen bedeutet, jedes Feld der Reihe nach zu übersetzen und dann zu einem einzelnen Satz zu kombinieren. Hier sind praktische Beispiele mit ihren verständlichen Entsprechungen:

AusdruckBedeutungEinsatzzweckRisikohinweise
0 0 * * *Mitternacht, jeden TagTägliche Batch-Jobs, Log-RotationHohe Belastung, wenn viele Jobs diesen Zeitslot teilen
*/5 * * * *Alle 5 MinutenHealth-Checks, Queue-AbfragenHohe Frequenz; bestätigen Sie, dass der Job idempotent ist
0 9 1 * *9:00 Uhr am 1. jedes MonatsMonatsberichteMonate mit weniger als 31 Tagen verhalten sich normal
30 2 * * 02:30 Uhr jeden SonntagWöchentliches WartungsfensterKann sich mit Sommerzeitumstellungen im Frühling überschneiden
0 */2 * * 1-5Alle 2 Stunden an WerktagenAbfragen während der GeschäftszeitenLäuft um 0, 2, 4 … 22 Uhr — nicht nur während der Arbeitszeiten

Das letzte Beispiel ist eine häufige Fehlinterpretation. */2 im Stundenfeld bedeutet jede zweite Stunde ab 0, nicht jede zweite Stunde während der Geschäftszeiten. Wenn Sie nur 9 bis 17 Uhr möchten, benötigen Sie stattdessen 0 9-17/2 * * 1-5. Dies ist genau die Art von subtilem Fehler, die der Cronwise Erklärer erkennt, indem er Ihnen die nächsten 10 geplanten Ausführungen in Ihrer Zeitzone anzeigt.

Grenzfälle und Feldgrenzen

Das 5-Feld-Format hat Grenzen, die leicht vergessen werden. Sie zu verstehen verhindert stille Fehler.

Wechselwirkung zwischen Tag-des-Monats und Wochentag

Wenn in Standard-Cron sowohl der Tag des Monats (Feld 3) als auch der Wochentag (Feld 5) auf Nicht-Platzhalter-Werte gesetzt sind, behandeln die meisten Implementierungen sie als Vereinigung: Der Job wird ausgeführt, wenn eine der beiden Bedingungen zutrifft. Das bedeutet, 0 9 15 * 1 bedeutet nicht „den 15., wenn er ein Montag ist". Es bedeutet „jeden 15. des Monats und jeden Montag". Dies ist eine der am häufigsten berichteten Überraschungen bei Cron.

Monats- und Wochentaggrenzen

Wenn Tag-des-Monats auf 31 gesetzt wird, bedeutet das, dass der Job nur in Monaten mit 31 Tagen ausgeführt wird (Januar, März, Mai, Juli, August, Oktober, Dezember). Kürzere Monate werden stillschweigend übersprungen. Ebenso stehen die Wochentagwerte 0 und 7 beide für Sonntag, aber ihre Vermischung im selben Ausdruck kann bei Code-Reviews Verwirrung stiften.

Zeitzonenabhängigkeit

Ein Cron-Ausdruck enthält von sich aus keine Zeitzoneninformation. Der Scheduler interpretiert Zeiten in der Zeitzone, die er verwendet, sei es UTC, die lokale Zeit des Servers oder eine explizite Überschreibung. Wenn Ihr Team mehrere Zeitzonen umfasst, bestätigen Sie immer die Zeitzoneneinstellung des Schedulers vor der Bereitstellung. Cronwise ermöglicht die Auswahl jeder IANA-Zeitzone und zeigt Ausführungen entsprechend an.

Wissen im Cronwise-Workflow anwenden

Sobald Sie die fünf Felder verstehen, besteht der nächste Schritt darin, vom Lesen von Cron-Ausdrücken zum sicheren Erstellen überzugehen. Cronwise bietet dafür zwei sich ergänzende Wege.

Zuerst erklären, dann generieren

Beginnen Sie mit dem Cron-Erklärer, um einen bestehenden Ausdruck zu überprüfen. Fügen Sie ihn ein, lesen Sie die verständliche Zusammenfassung und prüfen Sie die Tabelle der nächsten Ausführungen. Wenn der Zeitplan nicht Ihrer Absicht entspricht, wechseln Sie zum Cron-Generator, um den korrekten Ausdruck visuell Feld für Feld zu erstellen. Der Generator beseitigt Syntaxrätselraten, indem Sie Werte aus Dropdowns und Tabs auswählen können.

Verifizierungscheckliste vor der Bereitstellung

PrüfungWarum es wichtig istBestehkriterium
Verständliche Zusammenfassung stimmt mit Absicht übereinErkennt Feldreihenfolge-FehlerZusammenfassungssatz stimmt mit Ihrem Planungsziel überein
Zeitstempel der nächsten Ausführungen sind korrektErkennt Token-Fehlanwendungen (Bereiche, Schritte)Die ersten 5 Ausführungen entsprechen den erwarteten Daten und Zeiten
Zeitzone stimmt mit Zielumgebung übereinVerhindert Ausführung mit StundenversatzAusgewählte Zeitzone entspricht der konfigurierten Zeitzone des Schedulers
Keine ValidierungswarnungenErkennt riskante Muster frühzeitigKeine Warnungen oder jede Warnung bewusst akzeptiert

Für eine vollständige Anleitung zum visuellen Builder lesen Sie Visueller Cron-Generator: Schritt-für-Schritt-Workflow, der Tab-Navigation, gespeicherte Vorlagen und Exportoptionen behandelt.

Fazit: Mit Zuversicht bereitstellen

Das 5-Feld-Cron-Format ist trügerisch einfach: Minute, Stunde, Tag des Monats, Monat und Wochentag. Es zu beherrschen bedeutet, nicht nur die Feldpositionen zu kennen, sondern auch zu verstehen, wie Token sich kombinieren, wo Grenzfälle lauern und warum eine 10-Sekunden-Validierungsprüfung jedes Mal den Aufwand wert ist.

Hier sind die wichtigsten Regeln zum Mitnehmen:

  • Lesen Sie Felder von links nach rechts: Minute, Stunde, Tag, Monat, Wochentag.
  • Ein Sternchen bedeutet „jede/r/s" — es ist kein Platzhalter oder Standardwert.
  • Bereiche, Listen und Schritte können kombiniert werden, aber jedes Feld wird unabhängig ausgewertet.
  • Tag-des-Monats und Wochentag bilden eine Vereinigung, wenn beide keine Platzhalter sind — keine Schnittmenge.
  • Überprüfen Sie immer die Zeitzone des Schedulers und schauen Sie sich die nächsten Ausführungen vor der Bereitstellung an.

Cronwise ist darauf ausgelegt, diese Überprüfung schnell zu machen. Fügen Sie einen Ausdruck ein, lesen Sie die Erklärung, prüfen Sie die Ausführungen und stellen Sie mit Zuversicht bereit. Alle Cron-Artikel durchsuchen auf Cronwise, um weiter zu lernen, oder springen Sie direkt ins Tool.