tooloora

Cron werktags um 9 Uhr – 0 9 * * 1-5 erklärt

Montag bis Freitag um 09:00 Uhr – samt Wochentagsnummern und der Tatsache, dass Cron keine Feiertage kennt.

Läuft lokal – nichts wird hochgeladen

Beispiele

Im Klartext

Um 09:00 Uhr, montags bis freitags.

Feld für Feld

  • 0Minute

    zur Minute 0

    Trifft: 0

  • 9Stunde

    zwischen 09:00 und 09:59 Uhr

    Trifft: 9

  • *Tag im Monat

    an jedem Tag des Monats

    Trifft: 1, 2, 3, 4, 5, 6 … 31

  • *Monat

    in jedem Monat

    Trifft: Jan, Feb, Mär, Apr, Mai, Jun … Dez

  • 1-5Wochentag

    montags bis freitags

    Trifft: Mo, Di, Mi, Do, Fr

Nächste Ausführungen

Termine werden berechnet …

Diese Termine gelten in der Zeitzone, die auf dem Server eingestellt ist. Cron rechnet nichts um; die Vorschau hier nutzt die Uhr deines Geräts.

Der Ausdruck bleibt in deinem Browser – er wird nie an einen Server gesendet.

Weitere Ausdrücke

0 9 * * 1-5 lässt den Auftrag um 09:00 Uhr von Montag bis Freitag laufen und bleibt am Wochenende still. Das letzte Feld trägt den Wochentagsbereich: Cron zählt den Sonntag als 0, also steht 1-5 für Montag bis Freitag. Das Tagesfeld bleibt ein Stern, damit sich die beiden Tagesfelder nicht ins Gehege kommen.

Wie zählt Cron die Wochentage?

Von Sonntag als 0 bis Samstag als 6 – und die 7 gilt zusätzlich als Sonntag, 0 und 7 meinen also denselben Tag. Diese Doppelbedeutung stammt aus uneinigen Unix-Varianten und ist der Grund, warum ein Bereich wie 5-7 erlaubt ist, 7-1 dagegen ein Fehler. Die Kürzel SUN bis SAT und MON-FRI verstehen alle verbreiteten Umsetzungen.

Kennt Cron Feiertage?

Nein. Es gibt in Cron nirgends einen Feiertagskalender, ein werktäglicher Bericht landet also auch am 3. Oktober oder 1. Mai in einem leeren Büro. Üblich ist eine Abfrage im Skript: das Datum in einer Feiertagsliste nachschlagen und sich sonst sofort beenden. Die Prüfung im Skript statt im Plan hat den Vorteil, dass sie jedes Jahr nur an einer Stelle gepflegt werden muss.

Warum sollte das Tagesfeld ein Stern bleiben?

Weil Cron von UND auf ODER umschaltet, sobald beide Tagesfelder eingeschränkt sind: 0 9 1 * 1-5 bedeutet nicht „am Ersten, sofern er ein Werktag ist“, sondern „am Ersten und an jedem Werktag“. Die Handbuchseite crontab(5) sagt das ausdrücklich, und es ist die am häufigsten falsch gelesene Regel der ganzen Syntax.

So trägst du den Ausdruck ein

  1. Den Wochentagsbereich ins fünfte Feld schreiben, entweder als 1-5 oder als MON-FRI.
  2. Das Tagesfeld auf Stern lassen, sonst greift die ODER-Regel.
  3. Die Zeile 0 9 * * 1-5 samt Befehl eintragen und die Crontab speichern.
  4. Spielen Feiertage eine Rolle, oben im Skript eine Datumsprüfung ergänzen statt den Plan zu ändern.

Häufige Fragen

Ist 1-5 Montag bis Freitag oder Sonntag bis Donnerstag?

Montag bis Freitag. Gezählt wird ab Sonntag mit 0, also ist 1 der Montag und 5 der Freitag. Wer unsicher ist, tippt den Ausdruck oben in den Erklärer: Er schreibt die Wochentage im Klartext aus.

Wie plane ich nur Samstag und Sonntag?

Mit 0 9 * * 6,0 oder gleichbedeutend 0 9 * * 6,7. Beides deckt Samstag und Sonntag ab, denn Cron akzeptiert die 7 neben der 0 als zweite Schreibweise für den Sonntag.

Kann ich MON-FRI statt 1-5 schreiben?

Ja, die dreibuchstabigen Kürzel gelten im Wochentags- und im Monatsfeld bei allen verbreiteten Umsetzungen. In manchen älteren Versionen lassen sie sich nicht mit einer Schrittweite kombinieren, deshalb bleibt 1-5 in fremden Umgebungen die sicherste Schreibweise.

Wird der eingefügte Ausdruck gespeichert?

Nein. Alles passiert im Browser: Die Zeile wird lokal zerlegt, Beschreibung und nächste Termine entstehen auf deinem Gerät, und nichts wird an einen Server geschickt oder in ein Protokoll geschrieben.