Cron Expression Builder

Cron Ausdruck für jeden Werktag (Mo bis Fr): 0 0 * * 1-5

Der Cron Ausdruck 0 0 * * 1-5 läuft Montag bis Freitag. Deckt den Bereich 1-5, Aliase MON-FRE, Feiertags Workarounds und Geschäftszeiten Muster ab.

100% clientseitig. Deine Daten verlassen niemals deinen Browser.

Minute
Stunde
Tag des Monats
Monat
Wochentag

At 12:00 AM, Monday through Friday

Nächste 5 Ausführungen
  • 1.Tue, Jun 16, 2026, 00:00
  • 2.Wed, Jun 17, 2026, 00:00
  • 3.Thu, Jun 18, 2026, 00:00
  • 4.Fri, Jun 19, 2026, 00:00
  • 5.Mon, Jun 22, 2026, 00:00
Kurzreferenz
*Beliebiger Wert
,Listentrennzeichen
-Bereich
/Schritt
1-5Bereich 1 bis 5
*/15Alle 15 Einheiten

Verwandte Werkzeuge

Der Ausdruck 0 0 * * 1-5

Der Cron Ausdruck 0 0 * * 1-5 löst um Mitternacht, Montag bis Freitag aus. Feldaufschlüsselung: Minute (0), Stunde (0), Tag des Monats (*), Monat (*), Wochentag (1-5). Mitternacht an Werktagen ist eine übliche Basis. Die meisten Teams passen das Stundenfeld an ihre tatsächlichen Bedürfnisse an. Das Kernkonzept hier ist der Bereich 1-5 im Wochentagsfeld, was diese Seite lesenswert macht, unabhängig davon, welche Uhrzeit du einstellst.

Der Bereich 1-5 im Wochentagsfeld

Der Wochentag im POSIX Cron ist das fünfte Feld und verwendet die folgende Nummerierung:

NummerTag
0Sonntag
1Montag
2Dienstag
3Mittwoch
4Donnerstag
5Freitag
6Samstag
7Sonntag (Alias)

Der Bereich 1-5 trifft Montag bis Freitag. Samstag (6) und Sonntag (0 oder 7) sind ausgeschlossen. Dies ist der Mechanismus hinter jedem “nur an Geschäftstagen ausführen” Cron Ausdruck, dem du begegnen wirst.

MON-FRE Alias

In Vixie cron und den meisten modernen Implementierungen funktionieren dreibuchstabige Abkürzungen im Wochentagsfeld:

0 0 * * MON-FRE    # identisch zu 0 0 * * 1-5
0 0 * * MON,MIE,FRE  # nur Montag, Mittwoch, Freitag
0 0 * * DIE,DON    # Dienstag und Donnerstag

Benannte Aliase verbessern die Lesbarkeit in gemeinsam genutzten crontabs. Sie funktionieren in cronie (dem Standard auf RHEL/CentOS/Fedora), Vixie cron (Debian/Ubuntu) und den meisten verwalteten Cloud Schedulern. Wenn die Portabilität über minimale oder eingebettete Cron Implementierungen wichtig ist, verwende Zahlen.

Warum Nur-Werktag Zeitpläne existieren

Der Hauptgrund ist die menschliche Verfügbarkeit. Automatisierte Systeme, die benachrichtigen, alarmieren oder bereitstellen, sollten berücksichtigen, ob jemand in der Nähe ist, um zu reagieren. Häufige Fälle:

Geschäftsprozess Automatisierung

Rechnungserstellung, Berichtsverteilung und Datenabgleichsjobs, die in Workflows einfließen, an denen Menschen täglich arbeiten, müssen nicht am Wochenende laufen, wenn die Ausgabe ungelesen bis Montag liegen bleibt.

Bereitstellungen und Alarme

Viele Teams schränken Produktionsbereitstellungen auf Werktage ein, damit ein Ingenieur verfügbar ist, um bei Problemen zurückzusetzen. Ein Bereitschaftsalarm um 2 Uhr Samstag ist weniger nützlich, wenn das Team bis Montag nicht verfügbar ist.

Ressourcenkosten

Wenn ein Job nachgelagerte Verarbeitung, API Aufrufe oder externe Dienste auslöst, spart der Betrieb an fünf statt sieben Tagen pro Woche etwa 28% der Betriebskosten für diese Komponente.

SLA abgestimmte Verarbeitung

Jobs, die an Geschäfts SLAs gebunden sind (Zahlungsverarbeitungsfenster, Tagesabschlussabstimmung, Geschäftszeiten Berichte), sind von Natur aus nur an Werktagen aktiv, da das zugrunde liegende SLA es ist.

Feiertage werden von Cron nicht behandelt

Cron hat keine Kenntnis von gesetzlichen Feiertagen. Ein mit 1-5 geplanter Job wird an Weihnachten und Neujahr ausgeführt, wenn sie auf einen Werktag fallen. Wenn das ein Problem ist, liegt die Lösung auf der Anwendungsebene:

#!/bin/bash
# Feiertagsliste vor der Ausführung überprüfen
FEIERTAGS_DATEI="/etc/feiertage.txt"
HEUTE=$(date +%Y-%m-%d)

if grep -q "$HEUTE" "$FEIERTAGS_DATEI"; then
  echo "Überspringe: $HEUTE ist ein Feiertag"
  exit 0
fi

# Den eigentlichen Job ausführen
/opt/jobs/business-report

Verwalte die Feiertagsdatei als Teil deiner Infrastrukturkonfiguration. Einige Teams generieren sie jährlich aus einer Kalender API (wie der Google Calendar API oder einer länderspezifischen Feiertags API) und stellen sie zusammen mit ihren crontabs bereit.

Häufige Werktag Muster

Die Basis 0 0 * * 1-5 wird fast immer angepasst. Dies sind die Muster, die tatsächlich in Produktions crontabs vorkommen:

Täglicher Job zu einer bestimmten Geschäftszeit:

0 9 * * 1-5    # 9 Uhr Werktage, Morgenjob vor dem Standup
0 6 * * 1-5    # 6 Uhr Werktage, Daten vorbereiten vor Geschäftsbeginn
0 18 * * 1-5   # 18 Uhr Werktage, Tagesabschlussverarbeitung

Intervall innerhalb der Geschäftszeiten:

*/15 9-17 * * 1-5   # alle 15 Min, 9 bis 17 Uhr, Werktage
*/30 8-18 * * 1-5   # alle 30 Min während erweiterter Geschäftszeiten
0 * 9-17 * * 1-5    # zu jeder vollen Stunde während der Geschäftszeiten

Mehrere feste Zeiten an Werktagen:

0 9,12,17 * * 1-5   # 9 Uhr, 12 Uhr und 17 Uhr Werktage
0 8,16 * * 1-5      # zweimal täglich zu Schichtgrenzen

Nur Montag oder nur Freitag:

0 0 * * 1   # Mitternacht Montag, wöchentlicher Startjob
0 23 * * 5  # 23 Uhr Freitag, Wochenendbereinigung vor dem Wochenende

Interaktion zwischen Tag des Monats und Wochentag

Ein wichtiger Cron Randfall: Wenn sowohl das Tag des Monats Feld als auch das Wochentagsfeld explizit gesetzt sind (keines ist *), führt Cron den Job auf der Vereinigungsmenge beider Einschränkungen aus, nicht auf der Schnittmenge.

0 0 15 * 1-5   # läuft am 15. jedes Monats UND an jedem Werktag

Dies bedeutet nicht “Werktage, die auf den 15. fallen.” Es bedeutet “jeden Werktag plus den 15. jedes Monats.” Wenn du die Ausführung auf eine bestimmte Kombination beschränken möchtest, benötigst du Skriptlogik, keinen komplexeren Cron Ausdruck.

Bei 0 0 * * 1-5 ist der Tag des Monats *, daher trifft dieser Randfall nicht zu.

Den Zeitplan überprüfen

from croniter import croniter
from datetime import datetime

cron = croniter("0 0 * * 1-5", datetime.now())
for _ in range(7):
    print(cron.get_next(datetime))

Führe 7 Iterationen durch und du wirst sehen, dass der Zeitplan Samstag und Sonntag überspringt. Verwende den Cron Builder auf dieser Seite, um die nächsten 10 Laufzeiten interaktiv anzuzeigen.