Generator și explicator de expresii cron

Construiește un program crontab din câteva clicuri sau lipește unul existent. Primești o explicație în limbaj clar, validare pe fiecare câmp și următoarele 10 rulări în fusul tău orar.

Rulează în browserFără înregistrareNimic nu este încărcat

minutorăzi (lună)lunăzi (săptămână)

Constructor vizual

Următoarele 10 rulări

    Cum se folosește: Generator de expresii cron

    1. Scrie o expresie cron precum */15 * * * * sau dă clic pe o presetare.
    2. Citește descrierea în limbaj clar pentru a confirma că face ce te aștepți. Câmpurile invalide sunt evidențiate, cu motivul.
    3. Folosește filele Constructorului vizual pentru a seta minutul, ora, ziua lunii, luna și ziua săptămânii cu Fiecare, La fiecare N, Specific sau Interval.
    4. Verifică următoarele 10 rulări și alege fusul orar al serverului dacă diferă de al tău.
    5. Copiază expresia în crontab, Kubernetes CronJob, secțiunea schedule din GitHub Actions sau configurația CI.

    Sintaxa cron într-un minut

    O expresie cron standard are cinci câmpuri separate prin spații:

    ┌───────────── minute (0-59)
    │ ┌─────────── hour (0-23)
    │ │ ┌───────── day of month (1-31)
    │ │ │ ┌─────── month (1-12 or JAN-DEC)
    │ │ │ │ ┌───── day of week (0-7 or SUN-SAT, 0 and 7 are Sunday)
    │ │ │ │ │
    * * * * *  command
    SimbolSemnificațieExemplu
    *orice valoare* * * * * în fiecare minut
    ,listă0 9,17 * * * la 09:00 și 17:00
    -interval0 9 * * 1-5 în zilele lucrătoare la 09:00
    /pas*/10 * * * * la fiecare 10 minute
    @dailymacrola fel ca 0 0 * * *; de asemenea @hourly, @weekly, @monthly, @yearly, @reboot

    Capcana zi a lunii / zi a săptămânii

    Când ambele câmpuri de zi sunt restricționate (niciunul nu începe cu *), cron rulează când se potrivește oricare dintre ele. Așadar, 0 0 13 * 5 rulează pe 13 ale fiecărei luni și în fiecare vineri, nu doar vineri 13. Acest generator respectă regula Vixie cron, iar descrierea spune „sau” ca să observi asta.

    Fusuri orare și ora de vară

    Cron folosește fusul orar local al serverului, dacă nu este configurat altfel (CRON_TZ= în unele implementări, timeZone în Kubernetes CronJobs; GitHub Actions folosește mereu UTC). Alege acel fus în previzualizarea rulărilor. Joburile programate într-un gol de oră de vară (de exemplu 02:30 în noaptea trecerii la ora de vară) sunt omise în previzualizare, pentru că acea oră locală nu există.

    Programe uzuale

    • */5 * * * *: la fiecare 5 minute
    • 0 */2 * * *: la fiecare 2 ore, la ora fixă
    • 0 9 * * 1-5: la 09:00 în zilele lucrătoare
    • 0 0 1 * *: la miezul nopții în prima zi a fiecărei luni
    • 0 3 * * 0: la 03:00 în fiecare duminică, o fereastră tipică de backup

    Întrebări frecvente

    Cum rulez un job cron la fiecare 5 minute?
    Folosește */5 * * * *. Pasul /5 din câmpul minutelor înseamnă fiecare al 5-lea minut, începând de la 0: 00, 05, 10 și așa mai departe.
    Acceptă cron secunde?
    Crontab standard nu; cea mai mică unitate este un minut. Quartz, Spring și unele programatoare cloud adaugă un câmp pentru secunde (6 sau 7 câmpuri). Acest instrument validează formatul standard cu 5 câmpuri și îți spune când vede 6 câmpuri.
    Duminica este 0 sau 7?
    Ambele. În câmpul zilei săptămânii, 0 și 7 înseamnă amândouă duminică și poți scrie și nume precum SUN sau MON-FRI.
    De ce jobul meu rulează în mai multe zile decât mă așteptam?
    Dacă ai restricționat atât ziua lunii, cât și ziua săptămânii, cron rulează când se potrivește oricare dintre ele. Setează unul dintre ele la * ca să conteze doar celălalt.
    În ce fus orar sunt afișate următoarele rulări?
    Implicit, în fusul orar al browserului. Alege din listă fusul serverului (deseori UTC) pentru a vedea exact când se declanșează jobul acolo.

    Instrumente similare