Zum Inhalt springen

Crontab-Generator

Bearbeiten Sie die fünf Cron-Felder oder wählen Sie eine Vorlage. Der Zeitplan wird erklärt und die nächsten sieben Läufe erscheinen in UTC und Ortszeit.

100 % lokale Ausführung im Browser • Kein Upload • Air-Gap-tauglich

100 % lokale Ausführung • Eingaben verlassen nie Ihren Browser Cron field parser

Cron-Ausdruck

*/159-17**1-5

0–59

0–23

1–31

1–12 · JAN–DEC

0–6 · SUN–SAT

Bedeutung

Alle 15 Minuten, zwischen 09:00 und 17:59, nur Montag bis Freitag

Nächste 7 Ausführungen

    crontab -e

    # m h dom mon dow command
    */15 9-17 * * 1-5 /usr/local/bin/backup.sh

    Systemd-Timer (OnCalendar=)

    OnCalendar=Mon..Fri *-*-* 09..17:00/15:00

    Unit-Dateien: backup.service + backup.timer

    # /etc/systemd/system/backup.service
    [Unit]
    Description=backup (converted from cron)
    
    [Service]
    Type=oneshot
    ExecStart=/usr/local/bin/backup.sh
    
    # /etc/systemd/system/backup.timer
    [Unit]
    Description=Run backup on a schedule
    
    [Timer]
    OnCalendar=Mon..Fri *-*-* 09..17:00/15:00
    Persistent=true
    
    [Install]
    WantedBy=timers.target
    
    # Enable: sudo systemctl daemon-reload && sudo systemctl enable --now backup.timer

    CtrlEnter zum Ausführen

    Falsches Ergebnis, kaputtes Layout oder eine Idee? Schreiben Sie uns zu diesem Tool.

    Crontab-Generator: Crontab-Zeitplan und Systemd-Timer – Sicherheitsarchitektur-Banner

    Dieser Crontab-Generator übersetzt einen fünfteiligen Zeitplan wie */15 9-17 * * 1-5 in verständliche Sprache und listet die nächsten sieben Ausführungen in UTC und in Ihrer lokalen Zeitzone. Sie können damit einen neuen Cronjob erzeugen oder eine bestehende Zeile aus einer Produktions-Crontab überprüfen. Wer crontab guru kennt, findet hier dieselbe Syntax – ergänzt um eine Zeitleiste und lokale Ausführung ohne Upload.

    Die fünf Felder eines Cron-Ausdrucks

    Ein Standard-Cron-Ausdruck besteht aus fünf durch Leerzeichen getrennten Feldern: Minute (0–59), Stunde (0–23), Tag des Monats (1–31), Monat (1–12 oder JAN–DEC) und Wochentag (0–6 oder SUN–SAT, 7 ist ebenfalls Sonntag). In einer Crontab-Zeile folgt danach der auszuführende Befehl.

    Jedes Feld akzeptiert einen Wert (5), eine Liste (1,15,30), einen Bereich (9-17), eine Schrittweite (*/10) oder Kombinationen wie 0-30/5. Ein Sternchen bedeutet „jeder Wert“. Beim Überfahren eines Feldes hebt der Generator den passenden Teil des Ausdrucks hervor.

    So funktioniert es: Cron Visualizer

    Crontab-Generator: Crontab-Zeitplan und Systemd-Timer – Architekturdiagramm. Diagramm des Cron-Ausdrucks */15 9-17 * * 1-5, zerlegt in Minute, Stunde, Tag, Monat und Wochentag, übersetzt in „alle 15 Minuten, 09:00–17:59, Montag bis Freitag“ mit Zeitleiste der nächsten Läufe.
    Diagramm des Cron-Ausdrucks */15 9-17 * * 1-5, zerlegt in Minute, Stunde, Tag, Monat und Wochentag, übersetzt in „alle 15 Minuten, 09:00–17:59, Montag bis Freitag“ mit Zeitleiste der nächsten Läufe.

    Die Falle bei Tag und Wochentag

    Sind sowohl Tag des Monats als auch Wochentag eingeschränkt, startet Vixie-Cron (Debian, Ubuntu, RHEL, macOS) den Job, wenn eines von beiden zutrifft – nicht beide. 0 9 13 * 5 läuft also am 13. jedes Monats und an jedem Freitag.

    Für „erster Montag im Monat“ planen Sie 0 9 1-7 * * und prüfen den Wochentag im Befehl: [ "$(date +\%u)" = 1 ] && /pfad/zum/job. Das Prozentzeichen muss maskiert werden, weil cron ein einfaches % als Zeilenumbruch interpretiert.

    Zeitzonen und Sommerzeit

    Cron wertet Zeitpläne in der Systemzeitzone des Servers aus – bei den meisten Cloud-Images ist das UTC. Die Zeitleiste zeigt deshalb UTC und Ihre lokale Zeit nebeneinander, damit Abweichungen auffallen, bevor sie zu einem Vorfall werden.

    Jobs zwischen 01:00 und 03:00 Uhr Ortszeit können bei der Zeitumstellung doppelt oder gar nicht laufen. Planen Sie kritische Jobs in UTC oder außerhalb dieses Fensters. Verpasste Läufe, während der Rechner aus war, holt cron nicht nach; dafür gibt es anacron oder systemd-Timer mit Persistent=true.

    Makros und andere Dialekte

    Die meisten Cron-Implementierungen kennen Kurzformen: @hourly (0 * * * *), @daily (0 0 * * *), @weekly (0 0 * * 0), @monthly, @yearly und @reboot. Kubernetes-CronJobs und GitHub-Actions-schedule verwenden dieselbe fünfteilige Syntax, immer in UTC, sofern keine timeZone gesetzt ist.

    • Quartz (Java) und AWS EventBridge nutzen sechs oder sieben Felder mit Sekunden bzw. Jahr – fügen Sie hier nur die fünf Standardfelder ein.
    • Verteilen Sie Last, indem Sie Minuten versetzen (7,37 * * * *), statt jeden Job zur Minute 0 zu starten.

    Cron-Spickzettel

    Fertige Cron-Ausdrücke für die häufigsten Zeitpläne.
    AusdruckBedeutungLäufe pro Tag
    * * * * *Jede Minute1.440
    */5 * * * *Alle 5 Minuten288
    */15 * * * *Alle 15 Minuten96
    0 * * * *Jede volle Stunde24
    0 */4 * * *Alle 4 Stunden6
    0 0 * * *Täglich um Mitternacht1
    0 9 * * 1-5Werktags um 09:001 (Mo–Fr)
    0 0 * * 0Wöchentlich, Sonntag 00:001 pro Woche

    Fertige Cron-Ausdrücke für die häufigsten Zeitpläne.

    Beispiele für die Kommandozeile

    Crontab bearbeiten

    crontab -e

    Cronjobs auflisten

    crontab -l

    Ausgabe eines Jobs protokollieren

    */5 * * * * /opt/backup.sh >> /var/log/backup.log 2>&1

    Häufige Fragen

    Die crontab (cron table) ist die Datei mit den geplanten Befehlen für den cron-Dienst, ein Job pro Zeile: fünf Zeitfelder, gefolgt vom Befehl. Jeder Benutzer hat eine eigene crontab, systemweite Jobs liegen in /etc/crontab und /etc/cron.d.