cron-Ausdrücke parsen & nächste Ausführungen
Standard-cron-Ausdrücke mit 5 Feldern in verständliche Zeitpläne übersetzen und kommende Ausführungszeiten in UTC und Ortszeit berechnen.
Funktionsweise
- Fünf Felder: Minute Stunde Tag-des-Monats Monat Wochentag (0 und 7 = Sonntag). Ausführungen werden in UTC und Ortszeit angezeigt.
- * — beliebiger Wert · */15 — alle 15 Einheiten
- 1-5 — Bereich einschließlich Grenzen · 1,15,30 — Liste
- Minute 0–59 · Stunde 0–23 · Tag 1–31 · Monat 1–12 · Wochentag 0–7
- Beschreibung
- —
Über das Parsen von cron-Ausdrücken
cron-Syntax & Feldreihenfolge
Standard-cron verwendet fünf durch Leerraum getrennte Felder: Minute (0-59), Stunde (0-23), Tag des Monats (1-31), Monat (1-12) und Wochentag (0-7, wobei sowohl 0 als auch 7 für Sonntag stehen).
Unterstützt werden Platzhalter (*), Schrittweiten (*/15), Bereiche (1-5) und kommagetrennte Listen (1,15,30). Nicht standardisierte Formate mit 6 oder 7 Feldern (etwa Quartz-Sekunden oder -Jahre) und spezielle Zeichenfolgen (@daily, @hourly) werden nicht unterstützt. Alle Ausführungszeiten werden lokal ohne Backend-Aufrufe berechnet.
cron im Code parsen und Ausführungen planen
- JavaScript (node-cron)
const cron = require("node-cron"); cron.schedule("*/15 * * * *", () => { console.log("Runs every 15 minutes"); });- Python (croniter)
from croniter import croniter from datetime import datetime iter = croniter("0 9 * * 1-5", datetime.now()) print("Next run:", iter.get_next(datetime))
FAQ zum cron-Parser
- Welche Zeitzone wird für die nächsten Ausführungszeiten verwendet?
- Die nächsten Ausführungszeiten werden in UTC berechnet und zusätzlich in der lokalen Zeitzone des Systems angezeigt.
- Was passiert, wenn sowohl Monatstag als auch Wochentag angegeben sind?
- Bei standardmäßigem POSIX-cron gilt: Sind beide Felder eingeschränkt (keines ist *), wird der Auftrag ausgeführt, sobald eine der beiden Bedingungen erfüllt ist (ODER-Verknüpfung).
- Werden Ausdrücke mit 6 Feldern einschließlich Sekunden unterstützt?
- Nein. Standard-cron unter UNIX/Linux verwendet genau 5 Felder. Zeitplanregeln mit 6 Feldern für Quartz, Spring und AWS werden nicht unterstützt.