tooloora

Cron alle 5 Minuten – */5 * * * * erklärt

Warum der Schrägstrich eine Schrittweite ist, warum */5 auf 0, 5, 10 … fällt und wann eine Liste die bessere Schreibweise ist.

Läuft lokal – nichts wird hochgeladen

Beispiele

Im Klartext

Alle 5 Minuten, jeden Tag.

Feld für Feld

  • */5Minute

    alle 5 Minuten

    Trifft: 0, 5, 10, 15, 20, 25 … 55

  • *Stunde

    jede Stunde

    Trifft: 0, 1, 2, 3, 4, 5 … 23

  • *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

  • *Wochentag

    an jedem Wochentag

    Trifft: So, Mo, Di, Mi, Do, Fr, Sa

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

*/5 * * * * lässt den Auftrag alle fünf Minuten laufen: zu Minute 0, 5, 10 und so weiter bis 55, in jeder Stunde an jedem Tag. Der Schrägstrich ist eine Schrittweite, keine Division. Er geht den Minutenbereich vom Startpunkt aus in Fünferschritten ab, also zwölf Läufe je Stunde.

Was bedeutet der Schrägstrich in */5?

Er setzt eine Schrittweite auf einen Bereich. Der Stern davor steht für den vollen Bereich 0 bis 59, und /5 greift daraus jeden fünften Wert ab dem Anfang: 0, 5, 10 … 55. Dasselbe geht auf einem echten Bereich, und dort zählt der Anfang: 10-20/3 trifft 10, 13, 16 und 19 – nicht 12, 15 und 18.

Ist */5 dasselbe wie 0,5,10,15,20,25,30,35,40,45,50,55?

Ja, exakt dieselbe Minutenmenge, und jede Cron-Umsetzung behandelt beide Schreibweisen gleich. Die Liste lohnt sich, wenn die Werte unregelmäßig sind, etwa 0,7,42. Für einen gleichmäßigen Rhythmus ist die Schrittweite kürzer und später leichter zu ändern, und genau deshalb steht sie in fast jeder echten Crontab.

Warum reißt eine Schrittweite wie */7 eine ungleiche Lücke?

Weil die Schrittweite zu jeder vollen Stunde neu beginnt. */7 feuert zu Minute 0, 7, 14, 21, 28, 35, 42, 49 und 56 – und der nächste Lauf ist wieder Minute 0, also schon vier Minuten später. Nur Teiler von 60 (2, 3, 4, 5, 6, 10, 12, 15, 20, 30) ergeben über die Stundengrenze hinweg einen gleichmäßigen Takt.

So trägst du den Ausdruck ein

  1. Crontab mit crontab -e öffnen.
  2. Die Zeile */5 * * * * gefolgt vom Befehl eintragen, mit absoluten Pfaden – Cron startet mit einem sehr kargen PATH.
  3. Die Ausgabe irgendwohin lenken, etwa mit >> /var/log/meinjob.log 2>&1, damit ein Fehlschlag eine Spur hinterlässt.
  4. Oben im Erklärer die nächsten Termine prüfen und mit dem erwarteten Rhythmus vergleichen.

Häufige Fragen

Zählt */5 ab dem Moment, in dem ich die Crontab speichere?

Nein. Cron vergleicht mit der Uhrzeit, nicht mit der verstrichenen Zeit seit dem Eintrag. Ein um 14:03 Uhr gespeicherter Auftrag läuft zuerst um 14:05, dann um 14:10 – der Plan hängt an der Uhr, nie an deiner Bearbeitung.

Wie versetze ich den Auftrag, damit er nicht mit allen anderen kollidiert?

Setze einen Startwert statt des Sterns: 2-59/5 läuft zu Minute 2, 7, 12 und so fort. Der Fünf-Minuten-Takt bleibt, liegt aber nicht mehr auf den runden Minuten, auf denen die meisten anderen Aufträge stehen.

Gibt es eine Kurzform für alle fünf Minuten?

Nein. Cron kennt nur die Kurzformen @hourly, @daily, @midnight, @weekly, @monthly, @yearly, @annually und @reboot, und @hourly ist davon schon die feinste. Alles unterhalb einer Stunde muss mit der Schrittweiten-Schreibweise ausgeschrieben werden.

Wird meine Crontab-Zeile irgendwohin hochgeladen?

Nein. Dieser Erklärer zerlegt den Ausdruck im Browser und rechnet die nächsten Termine auf deinem Gerät aus. Nichts wird übertragen, nichts gespeichert – nachprüfbar, indem du die Seite lädst und in den Flugmodus wechselst.