Cron-Ausdrücke erklärt: Wie man Cron-Zeitpläne liest und schreibt
Die Cron-Syntax ist kryptisch, bis Sie die fünf Felder verstehen. Lernen Sie, Cron-Ausdrücke zu lesen und zu schreiben, häufige Fehler zu vermeiden und jeden Zeitplan sofort in Ihrem Browser zu analysieren.
Wenn Sie jemals eine Webanwendung bereitgestellt, eine CI/CD-Pipeline konfiguriert oder einen Linux-Server verwaltet haben, sind Sie mit ziemlicher Sicherheit auf einen Cron-Ausdruck gestoßen. Fünf Sternchen, die Sie aus einer Konfigurationsdatei anstarren. Eine kryptische Zeichenkette wie 0 2 * * 0, vergraben in einem GitHub-Actions-Workflow. Ein AWS-EventBridge-Zeitplan, den niemand im Team mehr vollständig versteht. Cron-Ausdrücke sind überall — und sie sind wirklich verwirrend, wenn Sie sich nicht die Zeit genommen haben, das System dahinter zu lernen.
Dieser Leitfaden ist die Referenz, die Sie als Lesezeichen speichern sollten. Er behandelt alles von der Geschichte von Cron und seinem Auftreten in der modernen Infrastruktur über jedes Sonderzeichen, 10 annotierte Praxisbeispiele und häufige Fehler bis hin zu einer vollständigen Referenztabelle. Am Ende werden Sie jeden Cron-Ausdruck auf einen Blick lesen und neue mit Zuversicht schreiben können.
Was ist Cron?
Cron ist ein Unix-basierter Job-Scheduler, der Befehle oder Skripte automatisch zu festgelegten Zeiten und in festgelegten Intervallen ausführt. Der Name stammt von Chronos, der griechischen Personifikation der Zeit — eine treffende Wahl für ein Werkzeug, dessen einziger Zweck die zeitbasierte Automatisierung ist. Das ursprüngliche Cron wurde in Unix Version 7 im Jahr 1979 eingeführt, geschrieben von Ken Thompson bei den Bell Labs, und es ist seitdem ein fester Bestandteil unixähnlicher Betriebssysteme.
Der Scheduler funktioniert, indem er Konfigurationsdateien namens crontabs (Cron-Tabellen) liest — einfache Textdateien, in denen jede Zeile eine geplante Aufgabe definiert. Ein Hintergrund-Daemon-Prozess (crond) wacht jede Minute auf, prüft alle aktiven Crontabs und führt alle Jobs aus, deren Zeitplan mit der aktuellen Zeit übereinstimmt. Es ist ein wunderbar einfaches Design, das seit über vier Jahrzehnten grundlegend unverändert geblieben ist.
Wo Ihnen Cron heute begegnet
Cron ist nicht nur ein Relikt der Unix-Vergangenheit. Die Cron-Ausdruck-Syntax ist der De-facto-Standard für die Ausdrucksweise wiederkehrender Zeitpläne im gesamten modernen Software-Stack:
- Linux- und macOS-Crontab: Der ursprüngliche Anwendungsfall. Führen Sie
crontab -eauf einem beliebigen Linux- oder macOS-Rechner aus, um Ihren persönlichen Cron-Zeitplan zu bearbeiten. - GitHub Actions: Workflow-Dateien verwenden Cron-Syntax unter dem
schedule:-Trigger, um CI/CD-Pipelines wiederkehrend auszuführen. - AWS EventBridge (ehemals CloudWatch Events): Löst Lambda-Funktionen, ECS-Aufgaben und andere AWS-Dienste anhand eines Zeitplans mit einer 6-Feld-Cron-Variante aus.
- Kubernetes CronJobs: Die
CronJob-Ressource führt Batch-Workloads innerhalb eines Clusters anhand eines Cron-Zeitplans aus. - CI/CD-Pipelines: GitLab CI, CircleCI, Jenkins und Bitbucket Pipelines unterstützen alle geplante Ausführungen mithilfe von Cron-Ausdrücken.
- Vercel und Netlify: Beide Plattformen unterstützen cron-getriggerte Serverless-Funktionen für Aufgaben wie Cache-Invalidierung, Datenabruf und nächtliche Builds.
- Datenbankwartung: PostgreSQLs
pg_cron-Erweiterung, der MySQL Event Scheduler und verwaltete Datenbankdienste verwenden Cron-Syntax für Vacuuming-, Indizierungs- und Backup-Jobs. - Scheduler auf Anwendungsebene: Bibliotheken wie node-cron, APScheduler (Python), Quartz (Java) und Sidekiq (Ruby) verwenden alle Cron-Ausdrücke, um wiederkehrende Hintergrund-Jobs zu definieren.
Kurz gesagt: Wenn Sie in irgendeinem Bereich der Softwareentwicklung oder Systemadministration arbeiten, sind Cron-Ausdrücke etwas, dem Sie regelmäßig begegnen werden. Sie einmal zu lernen, zahlt sich überall aus.
Die Fünf-Feld-Struktur
Ein standardmäßiger Cron-Ausdruck besteht aus genau fünf durch Leerzeichen getrennten Feldern, von denen jedes eine Zeiteinheit repräsentiert. Zusammen definieren sie, wann ein Job laufen soll. Hier ist die kanonische visuelle Darstellung:
┌───────────── minute (0–59) │ ┌─────────── hour (0–23) │ │ ┌───────── day of month (1–31) │ │ │ ┌─────── month (1–12) │ │ │ │ ┌───── day of week (0–7) │ │ │ │ │ * * * * *
Von links nach rechts gelesen: Minute, Stunde, Tag des Monats, Monat, Wochentag. Ein Sternchen (*) in einem beliebigen Feld bedeutet „jeder mögliche Wert für dieses Feld". So bedeutet * * * * * „jede Minute jeder Stunde jedes Tages" — der freizügigste mögliche Zeitplan.
Feld 1: Minute (0–59)
Das Minutenfeld steuert, in welcher/welchen Minute(n) innerhalb einer Stunde ein Job ausgelöst wird. Ein Wert von 0 bedeutet zur vollen Stunde, 30 bedeutet zur halben Stunde, und * bedeutet jede Minute. Das ist das granularste Feld im Standard-Cron — die kleinste Planungseinheit ist eine Minute.
Feld 2: Stunde (0–23)
Das Stundenfeld verwendet die 24-Stunden-Zeit. 0 ist Mitternacht, 9 ist 9 Uhr, 17 ist 17 Uhr, und 23 ist 23 Uhr. Es gibt kein AM/PM — alles ist im 24-Stunden-Format. Denken Sie daran, dass Cron immer in der Zeitzone des Servers läuft, sofern nicht ausdrücklich anders konfiguriert.
Feld 3: Tag des Monats (1–31)
Steuert, an welchem/welchen Tag(en) des Monats ein Job läuft. 1 ist der erste, 15 ist der fünfzehnte, 31 ist der einunddreißigste. Seien Sie vorsichtig mit Werten wie 31 — in Monaten mit weniger Tagen (Februar, April, Juni usw.) läuft ein für den 31. geplanter Job in diesem Monat einfach nicht. Manche Implementierungen unterstützen das Sonderzeichen L im Sinne von „letzter Tag des Monats", unabhängig davon, wie viele Tage der Monat hat.
Feld 4: Monat (1–12)
Das Monatsfeld verwendet numerische Werte (1 für Januar bis 12 für Dezember) oder dreibuchstabige Abkürzungen (JAN, FEB, MAR, APR, MAY, JUN,JUL, AUG, SEP, OCT, NOV, DEC) in den meisten Implementierungen. Ein Sternchen bedeutet „jeden Monat".
Feld 5: Wochentag (0–7)
Dieses Feld gibt an, an welchem/welchen Wochentag(en) der Job laufen soll. Die Nummerierung hier ist eine häufige Quelle der Verwirrung: Sowohl 0 als auch 7 stehen für Sonntag in den meisten Cron-Implementierungen (eine Altlast aus dem ursprünglichen Unix-Design). Montag ist 1, Dienstag ist 2 und Samstag ist 6. Dreibuchstabige Abkürzungen (SUN, MON, TUE, WED, THU, FRI,SAT) werden in den meisten modernen Cron-Tools unterstützt.
*), behandeln die meisten Cron-Implementierungen sie als ODER-Bedingung — der Job läuft, wenn eine der beiden Bedingungen zutrifft. Das ist ein subtiles, aber entscheidendes Verhalten, das viele Entwickler überrascht.Sonderzeichen
Die wahre Stärke von Cron-Ausdrücken kommt von sechs Sonderzeichen, mit denen Sie komplexe Zeitpläne knapp ausdrücken können. Diese zu verstehen, ist der Schlüssel zur Geläufigkeit.
* — Platzhalter (jeder Wert)
Ein Sternchen bedeutet „jeden möglichen Wert in diesem Feld treffen". Im Minutenfeld bedeutet * jede Minute (0 bis 59). Im Monatsfeld bedeutet es jeden Monat. Es ist der standardmäßige „Dieses Feld ist mir egal"-Wert.
* * * * * # Runs every single minute, all day, every day
, — Liste (mehrere Werte)
Ein Komma trennt eine Liste bestimmter Werte. Das Feld trifft zu, wenn die aktuelle Zeit mit einem beliebigen Wert in der Liste übereinstimmt. So planen Sie einen Job, der zu mehreren diskreten Zeiten läuft, ohne einen Bereich zu verwenden.
0 9,13,17 * * * # Runs at 9:00 AM, 1:00 PM, and 5:00 PM every day 0 0 1,15 * * # Runs at midnight on the 1st and 15th of every month
- — Bereich (von bis)
Ein Bindestrich definiert einen inklusiven Wertebereich. Das Feld trifft auf jeden Wert zwischen Anfang und Ende, inklusive, zu. Das ist ideal, um Dinge wie „während der Geschäftszeiten" oder „an Werktagen" auszudrücken.
0 9-17 * * * # Runs at the top of every hour from 9 AM through 5 PM 0 0 * * 1-5 # Runs at midnight every Monday through Friday
/ — Schritt (alle N Einheiten)
Ein Schrägstrich definiert einen Schrittwert. */5 bedeutet „alle 5 Einheiten, beginnend beim Minimum". Sie können ihn auch mit einem Bereich kombinieren: 0-30/10 bedeutet „alle 10 Einheiten zwischen 0 und 30" (also 0, 10, 20, 30). Schritte sind eines der am häufigsten verwendeten Sonderzeichen.
*/5 * * * * # Every 5 minutes (0, 5, 10, 15, ... 55) */15 * * * * # Every 15 minutes (0, 15, 30, 45) 0 */6 * * * # Every 6 hours (0:00, 6:00, 12:00, 18:00) 0/15 * * * * # Same as */15 — starts from 0, every 15 minutes
L — Letzter (nur manche Implementierungen)
Das Zeichen L wird in manchen Cron-Implementierungen (insbesondere Quartz Scheduler in Java und manchen Linux-Cron-Varianten) im Sinne von „letzter" unterstützt. Im Tag-des-Monats-Feld bedeutet L den letzten Tag des aktuellen Monats — sei es der 28., 29., 30. oder 31. Es löst das Problem, „Monatsende"-Aufgaben zu planen, ohne die Länge des Monats im Voraus zu kennen.
0 0 L * * # Midnight on the last day of every month (Quartz/some crons)
? — Kein bestimmter Wert (Quartz/Java-Cron)
Das Fragezeichen wird im Quartz Scheduler (Java) und manchen anderen Tools verwendet, wenn Sie einen Wochentag angeben möchten, ohne auch einen Tag des Monats anzugeben, oder umgekehrt. Da es logisch keinen Sinn ergibt, beides anzugeben (etwa „den 15. UND einen Mittwoch"), sollte eines davon auf ? gesetzt werden, um „ist mir egal" anzuzeigen. Das standardmäßige Unix-Cron verwendet dieses Zeichen nicht — Sie verwenden stattdessen *.
0 9 15 * ? # Quartz: 9 AM on the 15th, day-of-week unspecified 0 9 ? * MON # Quartz: 9 AM every Monday, day-of-month unspecified
10 Praxisbeispiele für Cron
Der beste Weg, Ihr Verständnis zu festigen, ist das Studium echter Beispiele mit Kontext dazu, warum jeder Zeitplan gewählt wurde. Hier sind zehn Muster, denen Sie regelmäßig begegnen (und die Sie verwenden) werden.
1. Jeden Werktag um 9:00 Uhr
0 9 * * 1-5
Die Minute ist 0 (zur vollen Stunde), die Stunde ist 9 (9 Uhr), Tag des Monats und Monat sind Platzhalter, und der Wochentag ist 1-5 (Montag bis Freitag). Verwendet für tägliche Standup-Erinnerungen, Berichts-E-Mails, die zu Beginn des Geschäftstages versendet werden, und morgendliche Datensynchronisierungs-Jobs, die nicht am Wochenende laufen sollen.
2. Alle 15 Minuten
*/15 * * * *
Die Schritt-Syntax */15 im Minutenfeld liefert Ihnen Ausführungen bei 0, 15, 30 und 45 Minuten nach jeder Stunde, rund um die Uhr. Üblich für Health-Check-Pings, Cache-Warming, Webhook-Wiederholungen und jede nahezu echtzeitnahe Polling-Aufgabe, bei der Sie Aktualität brauchen, echte Echtzeit aber überdimensioniert oder nicht verfügbar ist.
3. Jeden Tag um Mitternacht
0 0 * * *
Minute 0, Stunde 0, alles andere Platzhalter. Das ist eines der häufigsten Cron-Muster überhaupt. Verwendet für die tägliche Berichtserstellung, Log-Rotation, Datenbankarchivierung, das Löschen temporärer Dateien, das Senden täglicher Digest-E-Mails und jede „einmal am Tag"-Aufgabe, die außerhalb der Geschäftszeiten laufen soll.
4. Erster Tag jedes Monats um Mitternacht
0 0 1 * *
Tag des Monats ist 1, alles andere ist Platzhalter (außer fester Minute/Stunde). Dies läuft am 1. Januar, 1. Februar, 1. März usw. Der Standardzeitplan für die monatliche Rechnungserstellung, Abrechnungszyklus-Trigger, Verlängerungen von SaaS-Abonnements und monatliche Analytics-Zusammenfassungen.
5. Jeden Sonntag um 2:00 Uhr
0 2 * * 0
Der Wochentag 0 ist Sonntag, und die Stunde 2 ist 2 Uhr — eine Zeit, zu der der Verkehr typischerweise am geringsten ist. Verwendet für wöchentliche vollständige Datenbank-Backups, Sitemap-Neuerzeugung, Inhaltsneuindizierung für die Suche und schwere Batch-Verarbeitungs-Jobs, die unter der Woche die Leistung beeinträchtigen würden.
6. Werktags um 8:30, 12:30 und 17:30 Uhr
30 8,12,17 * * 1-5
Dies kombiniert eine Liste im Stundenfeld mit einem Bereich im Wochentagsfeld. Die Minute 30 bedeutet, dass es zur halben Stunde ausgelöst wird. Verwendet für geplante Benachrichtigungsstapel (Push-Benachrichtigungen, E-Mail-Digests), dreimal tägliche Datensynchronisierungs-Jobs und jeden Arbeitsablauf, bei dem Sie regelmäßige Berührungspunkte über den Geschäftstag hinweg möchten, ohne jede Stunde zuzuschlagen.
7. 1. Januar um Mitternacht
0 0 1 1 *
Tag des Monats 1 und Monat 1 (Januar) zusammen fixieren dies auf Neujahr. Verwendet für jährliche Aufgaben wie jährliche Abonnementverlängerungen, die Archivierung der Daten des Vorjahres, die Erstellung jährlicher Compliance-Berichte und das Zurücksetzen jährlicher Kontingente oder Zähler in Anwendungen.
8. Alle 5 Minuten während der Geschäftszeiten an Werktagen
*/5 9-17 * * 1-5
Ein zusammengesetzter Ausdruck, der einen Schritt (*/5), einen Bereich in Stunden (9-17) und einen Bereich im Wochentag (1-5) kombiniert. Das liefert Ihnen aggressives Monitoring oder Polling — alle 5 Minuten von 9 bis 17 Uhr von Montag bis Freitag — und wird über Nacht und am Wochenende ruhig, um Ressourcen zu sparen und Alarmmüdigkeit zu vermeiden.
9. Alle 6 Stunden
0 */6 * * *
Der Schritt im Stundenfeld (*/6) liefert vier gleichmäßig verteilte Ausführungen pro Tag: Mitternacht, 6 Uhr, Mittag und 18 Uhr. Verwendet für die Datensynchronisierung zwischen Systemen, das Auffrischen langlebiger API-Tokens oder OAuth-Zugangsdaten vor deren Ablauf und periodische Cache-Invalidierung für Inhalte, die sich einige Male am Tag ändern, aber keine minutengenaue Aktualität benötigen.
10. 15. und letzter Tag jedes Monats
0 0 15,L * *
Eine Kommaliste im Tag-des-Monats-Feld, die ein festes Datum (15) und das Letzter-Tag-Kürzel (L) kombiniert. Das ist der klassische halbmonatliche Gehaltsabrechnungszeitplan — Abrechnungsperioden, die am 15. und am letzten Tag des Monats enden. Beachten Sie, dass L eine Implementierung erfordert, die es unterstützt (Quartz, manche Linux-Crons); das Standard-Crontab unterstützt L nicht.
Häufige Fehler und Stolperfallen
Cron-Ausdrücke haben mehrere bekannte Fallstricke, die Produktionsvorfälle verursachen. Sie im Voraus zu verstehen, erspart Ihnen eine schmerzhafte Debugging-Sitzung um 2 Uhr morgens.
Die Wochentag-Nummerierung ist nicht universell
Die meisten Unix-Cron-Implementierungen behandeln sowohl 0 als auch 7 als Sonntag. Aber manche Tools (darunter bestimmte Bibliotheken auf Anwendungsebene) beginnen die Woche am Montag, wodurch 1 = Montag und 7 = Sonntag ist. Überprüfen Sie stets die Nummerierungskonvention des konkreten Tools, das Sie verwenden, und bevorzugen Sie dreibuchstabige Abkürzungen (MON, TUE usw.), wenn die Implementierung sie unterstützt, um Mehrdeutigkeit zu beseitigen.
Cron läuft in der Zeitzone des Servers
Das ist wahrscheinlich die häufigste Quelle von Cron-Fehlern in der Produktion. 0 9 * * * bedeutet 9 Uhr in der Zeitzone des Rechners, der den Job ausführt — die UTC, US/Eastern oder etwas ganz anderes sein kann. Dokumentieren Sie die Zeitzonenannahme stets in einem Kommentar neben dem Cron-Ausdruck. Konfigurieren Sie bei cloudbasierten Schedulern die Zeitzone ausdrücklich, wenn die Plattform es unterstützt.
# Good practice: always document the timezone # Runs at 9 AM US/Eastern (UTC-5 or UTC-4 during DST) 0 14 * * 1-5 # 9 AM ET expressed in UTC
GitHub-Actions-Cron läuft immer in UTC
GitHub Actions verwendet standardmäßige 5-Feld-Cron-Syntax unter dem on: schedule:-Schlüssel, aber der Scheduler arbeitet immer in UTC — es gibt keine Zeitzonen-Konfigurationsoption. Wenn Sie möchten, dass ein Job um 9 Uhr Eastern Time läuft, müssen Sie ihn auf 0 14 * * * (UTC) planen. Beachten Sie außerdem, dass geplante GitHub-Actions-Workflows in Zeiten hoher Nachfrage bis zu 15 Minuten verspätet laufen können.
Die Schritt-Syntax gilt für ihr Feld, nicht für Minuten
Ein häufiges Missverständnis: */5 im Stundenfeld bedeutet alle 5 Stunden — nicht alle 5 Minuten. Der Schritt gilt stets für die Einheit des Feldes, in dem er steht. */5 im Minutenfeld bedeutet alle 5 Minuten; im Stundenfeld alle 5 Stunden; im Monatsfeld alle 5 Monate.
Jobs, die länger als ihr Intervall laufen, können sich überlappen
Cron ist ein Fire-and-Forget-Scheduler. Wenn Sie einen Job alle 5 Minuten planen und eine Job-Instanz 7 Minuten bis zum Abschluss benötigt, startet eine zweite Instanz, während die erste noch läuft. Das kann Race Conditions, doppelte Verarbeitung und Datenbeschädigung verursachen. Verwenden Sie eine Dateisperre oder eine Advisory Lock in Ihrer Datenbank, um die gleichzeitige Ausführung desselben Jobs zu verhindern.
Fehlende Felder vs. Platzhalter sind nicht immer gleichwertig
In manchen erweiterten Cron-Implementierungen (insbesondere Quartz) werden das Weglassen eines Feldes und die Verwendung von * unterschiedlich behandelt. Verwenden Sie stets alle erforderlichen Felder ausdrücklich und verlassen Sie sich für kritische Produktionszeitpläne niemals auf Standardwerte.
Nicht standardmäßige Erweiterungen: 6-Feld-Cron
Das standardmäßige Unix-Cron hat fünf Felder, wobei die Minute die feinste Granularität ist. Mehrere Systeme erweitern dies um zusätzliche Felder:
Sekundenfeld (vorangestellt)
Viele Scheduler auf Anwendungsebene (node-cron, Quartz, Spring Scheduler) fügen am Anfang ein Sekundenfeld hinzu und geben Ihnen so 6 Felder. Das ermöglicht eine sub-minütliche Planung bis hinab zur Sekunde. Die Felder sind: second minute hour day-of-month month day-of-week.
# 6-field cron with seconds prepended (Quartz / node-cron) 0 */5 * * * * # Every 5 minutes (second=0, minute=*/5, ...) 30 0 9 * * 1-5 # Weekdays at 9:00:30 AM
AWS EventBridge (6 Felder mit Jahr)
AWS EventBridge verwendet ein 6-Feld-Format, bei dem am Ende ein Jahresfeld angehängt wird:minute hour day-of-month month day-of-week year. Es erfordert außerdem die Verwendung von ?für entweder Tag-des-Monats oder Wochentag (niemals beide gleichzeitig als Platzhalter). AWS EventBridge unterstützt die */-Schritt-Syntax nicht auf dieselbe Weise wie Unix-Cron.
# AWS EventBridge cron format (6 fields, year at end) cron(0 9 ? * MON-FRI *) # Weekdays at 9 AM UTC, any year cron(0 0 1 * ? *) # First day of every month at midnight
So nutzen Sie den BrowseryTools Cron-Parser
Einen Cron-Ausdruck von Grund auf zu schreiben, ist die eine Fähigkeit — zu validieren, dass Sie ihn korrekt geschrieben haben, ist eine andere. Der BrowseryTools Cron-Parser macht es trivial, jeden Ausdruck zu überprüfen, bevor er auch nur in die Nähe der Produktion kommt.
Fügen Sie einen beliebigen 5-Feld- (oder 6-Feld-) Cron-Ausdruck in das Tool ein und erhalten Sie sofort:
- Eine menschenlesbare Beschreibung des Zeitplans („Jeden Werktag um 9:00 Uhr"), sodass Sie auf einen Blick überprüfen können, dass Ihre Absicht mit Ihrem Ausdruck übereinstimmt.
- Die nächsten 5–10 geplanten Ausführungszeiten, explizit aufgelistet, sodass Sie genau sehen, wann der Job ausgelöst wird, und bestätigen können, dass es keine Überraschungen gibt.
- Sofortiges Feedback bei ungültiger Syntax — hilfreich, wenn Sie einen Tippfehler haben oder mit einem Ausdruck arbeiten, den jemand anderes geschrieben hat.
Alles läuft vollständig in Ihrem Browser — kein Ausdruck wird an einen Server gesendet. Es ist der schnellste Weg, einen Zeitplan auf Plausibilität zu prüfen, bevor Sie ihn auf GitHub Actions, Kubernetes oder einer anderen Plattform bereitstellen.
Cron-Ausdruck-Referenztabelle
Verwenden Sie diese Tabelle als schnelle Referenz. Setzen Sie ein Lesezeichen auf diese Seite und kommen Sie immer dann darauf zurück, wenn Sie ein Muster nachschlagen oder überprüfen müssen, was ein Ausdruck bedeutet.
| Ausdruck | Menschenlesbare Bedeutung | Typischer Anwendungsfall |
|---|---|---|
* * * * * | Jede Minute | Hochfrequentes Polling, Tests |
*/5 * * * * | Alle 5 Minuten | Health-Checks, Cache-Warming |
*/15 * * * * | Alle 15 Minuten | Datensynchronisierung, Webhook-Wiederholungen |
0 * * * * | Jede Stunde zur vollen Stunde | Stündliche Aggregationen, API-Aufrufe |
0 */6 * * * | Alle 6 Stunden | Token-Auffrischung, Datensynchronisierung |
0 0 * * * | Jeden Tag um Mitternacht | Tägliche Berichte, Log-Rotation |
0 9 * * 1-5 | Werktags um 9:00 Uhr | Jobs zu Geschäftszeiten, Erinnerungen |
0 2 * * 0 | Jeden Sonntag um 2:00 Uhr | Wöchentliche Backups, Wartung |
0 0 1 * * | Erster jedes Monats um Mitternacht | Monatliche Rechnungen, Abrechnung |
0 0 1,15 * * | 1. und 15. jedes Monats | Halbmonatliche Gehaltsabrechnung |
0 0 1 1 * | 1. Januar um Mitternacht | Jährliche Aufgaben, jährliches Zurücksetzen |
30 8,12,17 * * 1-5 | Werktags um 8:30, 12:30, 17:30 Uhr | Benachrichtigungsstapel |
*/5 9-17 * * 1-5 | Alle 5 Min. während der Geschäftszeiten (Werktags) | Aktives Monitoring, Polling |
Validieren Sie Ihre Cron-Ausdrücke vor dem Bereitstellen
Cron-Ausdrücke sind kompakt und mächtig, aber ihre Knappheit bedeutet, dass ein einziger Tippfehler stillschweigend einen völlig anderen Zeitplan erzeugen kann. Ein Job, den Sie monatlich ausführen wollten, könnte täglich laufen. Ein Backup, das Sie jeden Sonntag auslösen wollten, könnte überhaupt nie laufen. Die Kosten eines falschen Zeitplans in der Produktion können von einem verpassten Bericht bis zu einem Abrechnungs-Job reichen, der Hunderte Male auslöst.
Die zweiminütige Gewohnheit, Ihren Ausdruck in einen Validator einzufügen und die nächsten paar geplanten Ausführungszeiten vor dem Bereitstellen zu prüfen, ist eine der wertvollsten Praktiken in DevOps und Backend-Engineering. Sie fängt Fehler ab, bevor sie zu Vorfällen werden.
Validieren Sie jeden Cron-Ausdruck sofort — kostenlos, privat, im Browser
Fügen Sie Ihren Ausdruck ein, erhalten Sie eine menschenlesbare Beschreibung und sehen Sie die nächsten geplanten Ausführungszeiten. Nichts verlässt Ihren Browser.
Den Cron-Parser öffnen →Try the Tools — 100% Free, No Sign-Up
Everything runs in your browser. No uploads. No accounts. No ads.
Explore All Tools →