TanodTools
DE

Cron-Ausdruck erklären

Lesen Sie einen Crontab-Zeitplan in Klartext und lassen Sie sich die nächsten Ausführungszeiten auflisten, in jeder Zeitzone.

Läuft vollständig in Ihrem Browser

Minute
Stunde
Tag des Monats
Monat
Wochentag

Nächste Ausführungen

Leer lassen, um ab jetzt zu beginnen.

    Standard-Cron mit fünf Feldern (Minute, Stunde, Tag des Monats, Monat, Wochentag), wie in Vixie cron, cronie und den meisten Linux-Systemen, dazu Abkürzungen im Stil von @daily. Quartz und andere Formate mit Sekundenfeld werden erkannt, aber nicht erklärt.

    So prüfen Sie einen Cron-Ausdruck

    1. Tippen oder fügen Sie die fünf Zeitplanfelder ein, etwa */15 9-17 * * 1-5, oder wählen Sie ein Beispiel. Eine vollständige Crontab-Zeile funktioniert auch; der Befehl nach dem fünften Feld wird ignoriert.
    2. Lesen Sie die Zusammenfassung in Klartext und die Aufschlüsselung der einzelnen Felder. Ein Fehler wird in dem Feld angezeigt, in dem er steckt.
    3. Prüfen Sie die Liste der nächsten Ausführungszeiten. Wählen Sie die Zeitzone, in der der Server läuft, und bei Bedarf einen anderen Startzeitpunkt, um weiter vorauszuschauen.

    Einen Cron-Zeitplan lesen

    Cron prüft seine Tabelle einmal pro Minute und führt jeden Job aus, dessen fünf Felder alle zur aktuellen Zeit passen, mit einer Ausnahme für die beiden Tagesfelder, die unten beschrieben ist. Der Cron-Ausdruck */15 9-17 * * 1-5 bedeutet also: in den Minuten 0, 15, 30 und 45, in den Stunden 9 bis 17, an jedem Tag des Monats, in jedem Monat, Montag bis Freitag. Die letzte Ausführung des Tages ist um 17:45 Uhr, weil das Stundenfeld die ganze Stunde 17 umfasst.

    Das Tool liest jedes Feld so, wie Vixie cron und cronie es tun, die in den meisten Linux-Distributionen enthalten sind. Namen von Monaten und Wochentagen werden in beliebiger Groß- und Kleinschreibung akzeptiert, und 7 gilt als Sonntag. Eine Schrittweite nach einer einzelnen Zahl, etwa 5/10, wird wie in vielen Cron-Versionen als 5-59/10 gelesen; manche ältere lehnen das ab, daher erinnert das Tool Sie daran, den Bereich auszuschreiben. Bereiche müssen von klein nach groß laufen: FRI-MON wird als Fehler markiert, statt umgebrochen zu werden, weil Standard-Cron Bereiche nicht umbricht.

    Die nächsten Ausführungszeiten werden berechnet, indem der Kalender in der gewählten Zeitzone durchlaufen wird. So findet ein Ausdruck, der nur am 29. Februar passen kann, sofort das nächste Schaltjahr, und einer, der nie passen kann, etwa 0 0 31 2 *, wird als „läuft nie“ gemeldet.

    Tipps

    Häufige Fragen

    Was bedeuten die fünf Felder?

    Der Reihe nach: Minute (0–59), Stunde (0–23), Tag des Monats (1–31), Monat (1–12 oder JAN–DEC) und Wochentag (0–7 oder SUN–SAT, wobei sowohl 0 als auch 7 Sonntag ist). Jedes Feld nimmt einen einzelnen Wert, eine Liste wie 1,15, einen Bereich wie 9-17, eine Schrittweite wie */15 oder 0-30/10 oder * für jeden Wert.

    Warum läuft mein Job an mehr Tagen als erwartet?

    Wenn sowohl das Feld „Tag des Monats“ als auch das Feld „Wochentag“ eingeschränkt sind, läuft Cron an Tagen, die zu einem der beiden passen, nicht zu beiden. 0 9 1 * 1 läuft am 1. jedes Monats und an jedem Montag. So verhalten sich Vixie cron und cronie. Eine Eigenheit derselben Regel: Ein Feld, das mit * beginnt, etwa */2, gilt als uneingeschränkt, dann müssen beide Felder passen.

    Welche Zeitzone verwendet Cron?

    Die Zeitzone des Rechners oder Containers, auf dem es läuft, sofern die Crontab nicht CRON_TZ oder TZ setzt. Viele Server laufen in UTC; prüfen Sie das, bevor Sie sich auf die angezeigten Zeiten verlassen. Wählen Sie in der Liste die Zeitzone des Servers, um seine Ausführungszeiten zu sehen.

    Was passiert bei der Zeitumstellung?

    Die Liste folgt der Uhr in der gewählten Zone: Eine Zeit, die beim Vorstellen der Uhren übersprungen wird, entfällt, und eine Zeit, die es beim Zurückstellen zweimal gibt, wird einmal aufgeführt. Vixie cron und cronie führen einen Job, der in einer übersprungenen Stunde geplant ist, kurz nach der Umstellung aus und wiederholen Jobs in der doppelten Stunde nicht; andere Scheduler verhalten sich unterschiedlich. Enthält ein aufgelisteter Zeitraum eine Umstellung, erscheint ein Hinweis.

    Werden Sekunden oder die Quartz-Syntax unterstützt?

    Nein. Ausdrücke mit sechs oder sieben Feldern oder mit ?, L, W oder # stammen aus Quartz, Spring und ähnlichen Schedulern, bei denen das erste Feld Sekunden sind. Das Tool sagt das, statt zu raten, denn als Standard-Cron gelesen ergäben sie einen falschen Zeitplan.

    Was bedeuten @daily, @hourly und die anderen Abkürzungen?

    @hourly ist 0 * * * *, @daily und @midnight sind 0 0 * * *, @weekly ist 0 0 * * 0, @monthly ist 0 0 1 * *, und @yearly und @annually sind 0 0 1 1 *. @reboot läuft einmal, wenn der Cron-Dienst startet, daher gibt es keine Zeiten aufzulisten.