Cron-Ausdruck-Decoder & nächste Ausführung
Eingaben
| Cron-Ausdruck | 0 9 * * 1-5 |
|---|
Cron-Ausdruck-Decoder & nächste Ausführung
Cron-Ausdruck oder @-Kürzel eingeben — zeigt eine verständliche Zeitplanbeschreibung und die nächsten drei UTC-Ausführungszeiten.
Eingaben
Cron-Ausdruck
Ergebnisse
Geben Sie einen Wert ein, um die Ergebnisse zu sehen.
Zeitplan
Nächste 3 Ausführungen (UTC)
Aufbau eines Cron-Ausdrucks
Ein Cron-Ausdruck ist eine fünffelderige Zeichenkette, die wiederkehrende Aufgaben auf Unix-ähnlichen Systemen einplant. Jedes Feld steht für eine Zeiteinheit; der Scheduler löst den Job aus, sobald alle fünf Felder mit der aktuellen Uhrzeit übereinstimmen. Das Format lautet:
| Feld | Position | Zulässige Werte | Sonderzeichen |
|---|---|---|---|
| Minute | 1 | 0–59 | * / , - |
| Stunde | 2 | 0–23 | * / , - |
| Tag des Monats | 3 | 1–31 | * / , - |
| Monat | 4 | 1–12 | * / , - |
| Wochentag | 5 | 0–7 (0 und 7 = Sonntag) | * / , - |
Sonderzeichen
*– passt auf jeden Wert im Feld („jede Stunde ausführen", „jeden Tag ausführen")*/n– Schritt; passt auf jeden n-ten Wert (z. B.*/15im Minutenfeld = alle 15 Minuten)a-b– Bereich; passt auf jeden Wert von a bis einschließlich b (z. B.1-5im Wochentagfeld = Montag bis Freitag)a,b,c– Liste; passt auf jeden aufgeführten Wert (z. B.1,15im Tag-des-Monats-Feld = der 1. und der 15.)a-b/n– Schrittbereich; z. B.10-50/10passt auf 10, 20, 30, 40, 50
Häufige Muster
| Ausdruck | Bedeutung |
|---|---|
* * * * * | Jede Minute |
*/15 * * * * | Alle 15 Minuten |
0 * * * * | Zur vollen Stunde |
0 9 * * 1-5 | 09:00 UTC an Werktagen |
30 17 * * 5 | 17:30 UTC jeden Freitag |
0 0 1 * * | Mitternacht UTC am 1. jedes Monats |
0 0 1 1 * | Mitternacht UTC am 1. Januar jeden Jahres |
0 0 * * 0 | Mitternacht UTC jeden Sonntag |
@-Kürzel
Die meisten Cron-Implementierungen akzeptieren praktische Aliasse:
| Kürzel | Entsprechender Ausdruck |
|---|---|
@yearly / @annually | 0 0 1 1 * |
@monthly | 0 0 1 * * |
@weekly | 0 0 * * 0 |
@daily / @midnight | 0 0 * * * |
@hourly | 0 * * * * |
Zusammenspiel von Tag-des-Monats und Wochentag
Wenn sowohl das Feld für den Tag des Monats als auch das Feld für den Wochentag eingeschränkt sind (keines davon ist *), wendet Cron eine ODER-Semantik an: Der Job läuft, wenn eine der Bedingungen zutrifft. Beispiel:
0 0 1 * 1
Dieser Ausdruck löst den Job um Mitternacht am 1. jedes Monats UND an jedem Montag aus — nicht nur an Montagen, die zufällig auf den 1. fallen. Dieses Verhalten ist durch POSIX festgelegt und wird von Vixie cron, der am weitesten verbreiteten Implementierung, umgesetzt.
Ist nur eines der beiden Felder eingeschränkt, hat das andere keine Wirkung, und der Job läuft schlicht an jedem Tag, der dem eingeschränkten Feld entspricht.
Wie Cron-Scheduling funktioniert
Jede Minute prüft der Scheduler, ob die aktuelle Uhrzeit auf alle fünf Felder passt. Ist das der Fall, wird der Job ausgelöst. Da die Auflösung eine Minute beträgt, ist eine Minute das kleinstmögliche Intervall zwischen zwei Ausführungen.
Der Scheduler holt versäumte Ausführungen standardmäßig nicht nach. Ist ein Server offline, wenn ein geplanter Zeitpunkt verstreicht, wird diese Ausführung übersprungen. Einige Scheduler — etwa Kubernetes CronJobs — verfügen über eine Einstellung startingDeadlineSeconds, mit der versäumte Ausführungen innerhalb eines Zeitfensters nachgeholt werden können.
Zeitzonen
Die meisten Cron-Implementierungen interpretieren Ausdrücke in der lokalen Zeitzone des Servers. Auf UTC konfigurierte Server lösen den Job genau dann aus, wenn UTC-basierte Ausdrücke es angeben. Server in anderen Zeitzonen verschieben die Auslösungszeit entsprechend.
Kubernetes CronJobs und GitHub-Actions-Zeitpläne interpretieren Cron-Ausdrücke beide in UTC. Dieser Rechner zeigt bevorstehende Ausführungszeiten in UTC an; verwendet Ihr System eine andere Zeitzone, korrigieren Sie die Angaben um den UTC-Offset dieser Zone.
Häufig gestellte Fragen (FAQ)
Was bedeuten die fünf Cron-Felder?
Ein Cron-Ausdruck besteht aus fünf durch Leerzeichen getrennten Feldern: Minute (0–59), Stunde (0–23), Tag des Monats (1–31), Monat (1–12) und Wochentag (0–7, wobei 0 und 7 beide für Sonntag stehen).
Jedes Feld akzeptiert einen konkreten Wert, einen Platzhalter (*), einen Bereich (1-5), einen Schritt (*/15), eine Liste (1,15) oder eine Kombination wie 1-5/2. Die @-Kürzel — @yearly, @monthly, @weekly, @daily, @hourly — werden in die entsprechenden 5-Felder-Ausdrücke aufgelöst.
Wie wirken Tag-des-Monats und Wochentag zusammen?
Wenn sowohl das Feld für den Tag des Monats als auch das Feld für den Wochentag eingeschränkt sind (keines davon ist *), wendet Cron eine ODER-Semantik an: Der Job läuft, wenn eine der beiden Bedingungen erfüllt ist.
0 0 1 * 1 beispielsweise läuft am 1. jedes Monats UND an jedem Montag — nicht nur an Montagen, die auf den 1. fallen. Ist nur eines der beiden Felder eingeschränkt, läuft der Job ausschließlich an Tagen, die diesem Feld entsprechen.
Werden die nächsten Ausführungszeiten in meiner lokalen Zeitzone angezeigt?
Dieser Rechner zeigt alle bevorstehenden Ausführungszeiten in UTC an. Die meisten Cron-Implementierungen — crontab unter Linux, Kubernetes CronJobs, GitHub-Actions-Zeitpläne — interpretieren den Ausdruck in der lokalen Zeitzone des Servers oder in UTC. Läuft Ihr Cron-Daemon in UTC, stimmen die hier angezeigten Zeiten exakt überein. Bei einer abweichenden Zeitzone addieren oder subtrahieren Sie den UTC-Offset zur Umrechnung.