Crontab Generator FAQ

Generate cron expressions visually

Was bedeutet jedes Feld in einem Cron-Ausdruck?

Cron verwendet 5 Felder: Minute (0-59), Stunde (0-23), Tag des Monats (1-31), Monat (1-12) und Wochentag (0-6, Sonntag=0). Zum Beispiel läuft '30 14 * * 5' um 14:30 Uhr jeden Freitag. Verwenden Sie * für 'jeden Wert', Bereiche wie 1-5, Listen wie 1,15 oder Schritte wie */10.

Warum läuft mein Cron-Job nicht?

Häufige Probleme: 1) Cron-Daemon läuft nicht (überprüfen Sie mit 'systemctl status cron'), 2) Falsche Crontab des Benutzers (verwenden Sie 'crontab -l' zur Überprüfung), 3) Umgebungs-/PATH-Unterschiede (verwenden Sie absolute Pfade), 4) Syntaxfehler im Ausdruck, 5) Keine Ausgabeumleitung (fügen Sie '>> /var/log/job.log 2>&1' hinzu, um Fehler zu sehen). Überprüfen Sie Systemprotokolle mit 'journalctl -u cron'.

Wie führe ich einen Cron-Job alle 5 Minuten aus?

Verwenden Sie '*/5 * * * *'. Das */5 im Minutenfeld bedeutet 'alle 5 Minuten' (läuft um :00, :05, :10, :15 usw.). Ähnlich läuft */10 alle 10 Minuten, */15 alle 15 Minuten und so weiter.

Kann ich Cron-Jobs nur während der Geschäftszeiten ausführen?

Ja. Für Wochentage 9 Uhr bis 17 Uhr stündlich: '0 9-17 * * 1-5'. Für alle 15 Minuten während der Geschäftszeiten: '*/15 9-17 * * 1-5'. Der Stundenbereich 9-17 und Wochentagsbereich 1-5 (Montag-Freitag) beschränken die Ausführung auf Geschäftszeiten.

Wie debugge ich einen Cron-Job, der fehlschlägt?

1) Fügen Sie Ausgabeumleitung hinzu: 'befehl >> /tmp/debug.log 2>&1', 2) Überprüfen Sie die Protokolldatei auf Fehler, 3) Führen Sie den genauen Befehl manuell zum Testen aus, 4) Überprüfen Sie, dass der Cron-Daemon läuft, 5) Überprüfen Sie Systemprotokolle (journalctl -u cron), 6) Stellen Sie sicher, dass Sie absolute Pfade für Befehle und Dateien verwenden, 7) Testen Sie die Umgebung mit '* * * * * env > /tmp/cron-env.txt', um zu sehen, was verfügbar ist.

Was ist der Unterschied zwischen Tag des Monats und Wochentag?

Wenn beide Felder angegeben sind (nicht *), verwendet Cron ODER-Logik. '0 0 13 * 5' läuft 'am 13. ODER am Freitag', nicht 'am Freitag, dem 13.'. Wenn Sie nur Freitage möchten, verwenden Sie '0 0 * * 5'. Wenn Sie nur den 13. möchten, verwenden Sie '0 0 13 * *'. Um komplexe Tageslogik zu erhalten, verwenden Sie ein Skript, das das Datum prüft.

Tool ausprobieren

Generate cron expressions visually

Crontab Generator