Gratis converter

Cron-expressie Generator

Genereer, leg uit en valideer cron-expressies direct in uw browser. Visuele bouwer en expressie-parser – gratis, privé en aan de clientzijde.

Cron-expressie
0 */6 * * *
Voor mensen leesbare beschrijving
Every minute
Volgende 5 geplande runs
Calculating...

Over deze tool

Cron-expressies zijn vijf (of zes, afhankelijk van het systeem) door spaties gescheiden velden die een schema beschrijven: minuut, uur, dag van de maand, maand en dag van de week. Elk veld accepteert numerieke waarden, bereiken, lijsten, verhogingen en jokertekens. Cron is sinds eind jaren zeventig het de facto Unix-planningsformaat en wordt nu veel verder dan Unix gebruikt – door Kubernetes CronJobs, GitHub Actions, AWS EventBridge-regels, Jenkins-taken en bijna elk ander planningssysteem in productie.

Het handmatig lezen en schrijven van cron-expressies is foutgevoelig. De velden zijn positioneel, de interactie tussen de dag van de maand en de dag van de week is niet voor de hand liggend (een waarde in een van beide velden activeert de taak, niet in beide), en fouten produceren stilletjes schema's die er goed uitzien, maar op de verkeerde momenten afgaan. Een generator die schema's in eenvoudig Engels vertaalt naar de juiste cron-syntaxis vermijdt deze fouten.

Deze tool biedt twee richtingen: het bouwen van een cron-expressie vanuit een vriendelijk formulier (elke maandag om 9.00 uur, elke 5 minuten tijdens kantooruren), en het uitleggen van een bestaande cron-expressie in menselijke termen. Beide draaien in uw browser zonder enige serverinteractie.

Waarom een Crongenerator gebruiken?

De Cron-syntaxis is compact en meedogenloos. Veelgemaakte fouten zijn onder meer het verwarren van de nummering van de dag van de week (zondag is 0 of 7, afhankelijk van het systeem), het vergeten van de semantiek van de dag van de maand en de dag van de week, en het verkeerd begrijpen van de syntaxis van de ophogingen (*/5 betekent elke 5, beginnend bij 0). Een generator vangt deze op door middel van constructie; de ​​geproduceerde uitdrukkingen komen overeen met wat u in het formulier hebt beschreven.

Het lezen van bestaande uitdrukkingen is net zo moeilijk. Een schema als 0 9 * * 1-5 ziet eruit als elke weekdag om 9.00 uur als je eenmaal de syntaxis kent, maar iedereen die niet bekend is met cron moet elk veld opzoeken. Het uitleggen van de uitdrukking in menselijke termen is sneller dan het leren van de syntaxis voor eenmalige interacties.

Hoe te gebruiken

Kies een schemapatroon en haal de cron-expressie op.

  1. Kies de generatiemodus: Bouw een cron-expressie op basis van formulierinvoer (frequentie, tijd, dagen) of leg een bestaande expressie uit in menselijke termen.
  2. Configureer het schema: Kies de frequentie (elke minuut, elk uur, elke dag, elke week, elke maand, op maat). Geef indien nodig tijden, dagen en intervallen op. Het formulier beperkt de invoer tot geldige combinaties.
  3. Genereren of uitleggen: Generatie produceert standaard cron-syntaxis (5 velden). De uitleg splitst elk veld op en geeft een voor mensen leesbare samenvatting.
  4. Gebruik in uw planner: Plak de gegenereerde expressie in de Kubernetes CronJob-specificatie, het GitHub Actions-schema, AWS EventBridge of de planner van uw platform.

Veelvoorkomende gebruiksscenario's

Technische details

Standaard cron heeft vijf velden: minuut (0–59), uur (0–23), dag van de maand (1–31), maand (1–12), dag van de week (0–6 of 0–7, beide zondag). Elk veld accepteert een enkele waarde, een door komma's gescheiden lijst, een bereik met koppelteken, verhoogd met / of een jokerteken met *.

Gebruik OR-semantiek voor dag van de maand en dag van de week: als een van beide is ingesteld op een waarde zonder jokertekens, wordt de taak uitgevoerd wanneer een van beide overeenkomt. Dit is contra-intuïtief, maar komt overeen met POSIX cron-gedrag. Het instellen van beide velden levert een breder schema op, niet een smaller schema.

Extensies variëren per implementatie. Sommigen accepteren een zesde veld voor seconden (Quartz, Spring); sommigen accepteren? als wildcardalternatief; sommige bevatten de snelkoppelingen @yearly, @monthly en @daily. De generator produceert standaard cron met 5 velden, geschikt voor de meeste systemen.

Beste praktijken

Veelgestelde vragen

Wat is het cron-expressieformaat?
Standaard cron gebruikt 5 velden: minuut (0-59), uur (0-23), dag van de maand (1-31), maand (1-12), dag van de week (0-7, waarbij 0 en 7 zondag zijn). Speciale tekens: * (willekeurig), , (lijst), - (bereik), / (stap).
Hoe stel ik in dat een taak elke 5 minuten wordt uitgevoerd?
Gebruik */5 in het minutenveld: '*/5 * * * *'. De /5 betekent 'elke 5e waarde'. Op dezelfde manier: */15 = elke 15 minuten, */2 = elke 2 minuten.
Welke tijdzone gebruikt cron?
Cron gebruikt doorgaans de systeemtijdzone. Op Linux-servers is dit meestal UTC, tenzij anders geconfigureerd. Cloudservices (AWS, GCP) zijn vaak standaard ingesteld op UTC. Controleer altijd de tijdzone-instelling van uw systeem.
Is dit hetzelfde formaat dat wordt gebruikt door GitHub Actions?
GitHub Actions gebruikt hetzelfde formaat met 5 velden, maar draait in de UTC-tijdzone. AWS CloudWatch en Kubernetes CronJobs gebruiken dit formaat ook. Sommige systemen zoals Quartz gebruiken een uitgebreid 6-7-veldformaat met seconden.
Wat is het verschil tussen 0 in de dag van de week en 7?
Beide betekenen zondag. POSIX cron accepteert 0–6 of 0–7. Gebruik wat uw specifieke cron-implementatie verkiest; de meesten accepteren beide.
Is de uitleg nauwkeurig voor niet-standaard cron?
Het richt zich op standaard cron met 5 velden. Quartz-extensies (met seconden), AWS EventBridge-varianten en andere dialecten worden mogelijk niet correct geparseerd. Bevestig dit aan de hand van de documentatie van het doelsysteem.
Wordt mijn expressie naar een server verzonden?
Nee. Het genereren en uitleggen gebeurt in uw browser.
Hoe zit het met de snelkoppelingen @jaarlijks en @maandelijks?
Veelgebruikte cron-implementaties ondersteunen @yearly, @monthly, @weekly, @daily, @hourly en @reboot als snelkoppelingen voor algemene schema's. De generator produceert standaarduitdrukkingen met 5 velden; u kunt snelkoppelingen handmatig vervangen als uw planner deze accepteert.