Cron-expressie-generator & -uitlegger
Bouw cron-expressies visueel veld-voor-veld, of plak een bestaande om een eenvoudige uitleg en de volgende vijf runtimes te krijgen.
Wat is een cron-expressie?
Een cron-expressie is een schema met vijf velden dat wordt gebruikt door Unix-achtige taakplanners, CI-systemen, Kubernetes CronJobs, AWS EventBridge, GitHub Actions en de meeste moderne job runners. Elk veld bestuurt één tijdseenheid — minuut, uur, dag van de maand, maand en dag van de week — en ondersteunt vier afkortingen: * (elke), een komma-gescheiden lijst (0,15,30,45), een bereik (1-5) en een stap (*/10). Door ze te combineren kun je vrijwel elk terugkerend schema beschrijven zonder zelf een kalender uit te schrijven.
Hoe gebruik je deze generator
Kies een voorinstelling voor een directe start, of bouw de expressie veld voor veld op. Elk veld heeft vier modi: Elke levert *; Specifieke lijst neemt komma-gescheiden waarden; Bereik neemt een begin–eind-paar; Stap neemt een interval (*/N) met een optionele begin-offset. De expressie en een omschrijving in gewone taal worden live bijgewerkt zodra je iets verandert. Andersom kan ook: zet een cron-string in het parse-veld onderaan — de tool ontcijfert hem in leesbare vorm en toont de volgende vijf uitvoeringstijden in jouw lokale tijdzone.
Veld-referentie
Minuut: 0–59. Uur: 0–23. Dag van de maand: 1–31. Maand: 1–12 (januari = 1). Dag van de week: 0–6 met zondag = 0 in klassieke Unix cron — 7 wordt door de meeste moderne parsers ook geaccepteerd als zondag. Als zowel dag van de maand als dag van de week op niet-*-waarden staan, vuurt klassieke cron op een van beide voorwaarden (een logische OF), wat veel mensen verrast. Kies één van de twee voor voorspelbaar gedrag.
Veelgestelde vragen
Komt dit overeen met Quartz / Spring cron?
0 ervoor zetten om een Quartz-compatibele string te krijgen, maar speciale tokens zoals L (last) en W (weekday) zijn Quartz-only en verschijnen hier niet.Hoe berekent de uitlegger de volgende uitvoeringen?
Hoe zit het met tijdzones?
crond gebruikt de systeemtijdzone, AWS EventBridge gebruikt standaard UTC, GitHub Actions gebruikt UTC, Kubernetes gebruikt de cluster-tijdzone. Bevestig altijd de tijdzone van je runner voordat je deployt.Hoe druk ik "de laatste dag van de maand" uit?
59 23 28-31 * *, die elke dag vanaf de 28e om 23:59 vuurt. De job zelf moet controleren of date -d 'tomorrow' +%-d = 1 (of het equivalent in jouw taal) en overslaan als het niet daadwerkelijk het einde van de maand is. Quartz cron ondersteunt hiervoor L — maar Quartz-expressies werken niet op gewone Linux cron.Kan ik een job elke 90 minuten uitvoeren?
*/90 werkt niet. De dichtstbijzijnde workaround is twee expressies: 0 0,3,6,9,12,15,18,21 * * * en 30 1,4,7,10,13,16,19,22 * * *, die samen elke 90 minuten vuren. Nog makkelijker: plan elke 30 minuten en doe exit 0 in het script wanneer het niet het juiste moment is.Waarom vuurt mijn job twee keer bij de overgang naar zomer-/wintertijd?
cron.timezone = 'UTC' of stel TZ=UTC in de crontab) en converteer naar lokale tijd binnen de job — UTC kent geen zomertijd.