Cron-lausekegeneraattori ja -selittäjä

Rakenna crontab-aikataulu napsautuksilla tai liitä olemassa oleva. Saat selkokielisen selityksen, kenttäkohtaisen validoinnin ja 10 seuraavaa suoritusaikaa omalla aikavyöhykkeelläsi.

Toimii selaimessaEi rekisteröitymistäMitään ei lähetetä

minuuttituntipäivä (kk)kuukausipäivä (vko)

Visuaalinen rakentaja

Seuraavat 10 suoritusta

    Näin käytät työkalua: Cron-lausekegeneraattori

    1. Kirjoita cron-lauseke, kuten */15 * * * *, tai napsauta valmista aikataulua.
    2. Lue selkokielinen kuvaus ja varmista, että lauseke tekee mitä odotat. Virheelliset kentät korostetaan syyn kera.
    3. Aseta Visuaalinen rakentaja -välilehdillä minuutti, tunti, kuukauden päivä, kuukausi ja viikonpäivä valinnoilla Joka, N:n välein, Tietyt tai Väli.
    4. Tarkista 10 seuraavaa suoritusaikaa ja valitse palvelimen aikavyöhyke, jos se eroaa omastasi.
    5. Kopioi lauseke crontabiisi, Kubernetes CronJobiin, GitHub Actionsin schedule-asetukseen tai CI-konfiguraatioon.

    Cron-syntaksi minuutissa

    Tavallisessa cron-lausekkeessa on viisi välilyönneillä erotettua kenttää:

    ┌───────────── 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
    MerkkiMerkitysEsimerkki
    *jokainen arvo* * * * * joka minuutti
    ,lista0 9,17 * * * klo 09:00 ja 17:00
    -väli0 9 * * 1-5 arkisin klo 09:00
    /askel*/10 * * * * 10 minuutin välein
    @dailymakrosama kuin 0 0 * * *; lisäksi @hourly, @weekly, @monthly, @yearly, @reboot

    Kuukauden päivän ja viikonpäivän ansa

    Kun molempia päiväkenttiä on rajattu (kumpikaan ei ala merkillä *), cron suoritetaan, kun jompikumpi täsmää. Siksi 0 0 13 * 5 suoritetaan jokaisena kuun 13. päivänä ja jokaisena perjantaina, ei vain perjantaina 13. päivä. Tämä generaattori noudattaa Vixie cronin sääntöä, ja kuvauksessa lukee ”tai”, jotta huomaat sen.

    Aikavyöhykkeet ja kesäaika

    Cron käyttää palvelimen paikallista aikavyöhykettä, ellei toisin määritetä (CRON_TZ= joissakin croneissa, timeZone Kubernetes CronJobeissa; GitHub Actions käyttää aina UTC:tä). Valitse tämä vyöhyke suoritusten esikatselussa. Kesäaikasiirron aukkoon ajastetut tehtävät (esimerkiksi klo 02:30 keväällä kellojen siirtoyönä) ohitetaan esikatselussa, koska tätä paikallista aikaa ei ole olemassa.

    Yleisiä aikatauluja

    • */5 * * * *: 5 minuutin välein
    • 0 */2 * * *: 2 tunnin välein, tasatunnein
    • 0 9 * * 1-5: arkisin klo 09:00
    • 0 0 1 * *: keskiyöllä jokaisen kuukauden ensimmäisenä päivänä
    • 0 3 * * 0: joka sunnuntai klo 03:00, tyypillinen varmuuskopiointiaika

    Usein kysytyt kysymykset

    Miten ajan cron-tehtävän 5 minuutin välein?
    Käytä lauseketta */5 * * * *. Minuuttikentän askel /5 tarkoittaa joka viidettä minuuttia nollasta alkaen: 00, 05, 10 ja niin edelleen.
    Tukeeko cron sekunteja?
    Tavallinen crontab ei tue; pienin yksikkö on yksi minuutti. Quartz, Spring ja jotkin pilviajastimet lisäävät sekuntikentän (6 tai 7 kenttää). Tämä työkalu validoi tavallisen 5 kentän muodon ja kertoo, jos se näkee 6 kenttää.
    Onko sunnuntai 0 vai 7?
    Molemmat. Viikonpäiväkentässä sekä 0 että 7 tarkoittavat sunnuntaita, ja voit kirjoittaa myös nimiä, kuten SUN tai MON-FRI.
    Miksi tehtäväni suoritetaan useampana päivänä kuin odotin?
    Jos rajasit sekä kuukauden päivän että viikonpäivän, cron suoritetaan, kun jompikumpi täsmää. Aseta toinen niistä arvoon *, jolloin vain toinen ehto on voimassa.
    Missä aikavyöhykkeessä seuraavat suoritusajat näytetään?
    Oletuksena selaimesi aikavyöhykkeessä. Valitse listasta palvelimesi vyöhyke (usein UTC) nähdäksesi tarkalleen, milloin tehtävä käynnistyy siellä.

    Aiheeseen liittyvät työkalut