Liigu põhisisu juurde

Cron-avaldise ehitaja tasuta

Ehita, valideeri ja selgita cron-avaldisi ajastatud ülesannete jaoks. Reaalajas lihtsa ingliskeelne kirjeldus, järgmise 5 käivitamise eelvaade ja tavalised mustrid eelseadistustena.

Töötab võrguühenduseta pärast laadimist
minut
(0-59)
tund
(0-23)
päev
(1-31)
kuu
(1-12)
nädalapäev
(0-7)

Lihtsas keeles

Ajal 09:00, Esmaspäevast reedeni.

Levinud mustrid

Ühilduv standardse Unix-cron-i, GitHub Actionsi, Kubernetes CronJobi ja enamiku planeerimissüsteemidega. Kasuta * tähenduseks „iga", */5 tähenduseks „iga 5", 1-5 vahemike jaoks, 1,15 konkreetsete väärtuste jaoks. Aktsepteerib ka @hourly, @daily, @weekly, @monthly, @yearly ja nimesid nagu MON-FRI või JAN-DEC.

Levinud kasutusviisid

  • Ehitage Cron GitHub Actionsi töövooleGitHub Actions kasutab plaanitud töövoode jaoks cron süntaksit. Ehitage ja kontrollige oma ajakava siin.
  • Ehitage Cron Kubernetes CronJob-ideleKubernetes CronJob ressursid kasutavad standardset cron süntaksit. Ehitage ja selgitage väljendit visuaalselt.
  • Ehitage Cron kirjed Linux crontab-ileEhitage traditsioonilised Unix cron (cron, crontab -e) väljendid enesekindlusega.
  • Plaanige andmebaasi hoolduse töödPlaanige varukoopiad, vaakum või analüüsi tööd enesekindlusega cron-väljendite abil.
  • Teavet kuidas Cron väljendid töötavadIga kohandamine näitab kohest ingliskeelset selgitust ja järgmiste 5 käigu eelvaadet — parim viis cron-i õppimiseks.

Kuidas see töötab

Cron-avaldise koostaja töötab täielikult sinu brauseris, kasutades käsitsi kirjutatud parserit lib/cron.ts's — välist teeki ega serverikutset pole. See valideerib avaldise, koostab tavakeelse kirjelduse, kasutades brauseri sisseehitatud Intl.DateTimeFormat ja Intl.ListFormat API-sid keelekeskkonna-teadlike päeva- ja kuunimede jaoks, ning arvutab järgmised planeeritud käivitusajad ajast edasi kõndides väljajätu-loogikaga, mitte iga minutit läbi proovides.

  1. 1
    Avaldis parsitakse väli-välja haaval
    Parser jagab avaldise viieks (või kuueks) tühikutega eraldatud väljaks ja tokeniseerib igaühe komade, vahemike (nt 1-5), sammunotatsiooni (nt */15) ja nimeliste väärtuste (nagu MON või JAN) suhtes. @makrod nagu @daily laiendatakse nende viie välja vastetega enne parsimise algust. Kehtetud väärtused või vahemikust väljas olevad numbrid ilmuvad tüübitud veakoodidena, mis kaardistatakse lokaliseeritud sõnumitesse.
  2. 2
    Inimloetav kirjeldus koostatud
    describeCron() lib/cron.ts's ehitab ingliskeelse (või lokaliseeritud) lause, uurides, millised väljad on üldmärgid vs selgesõnalised komplektid. Päeva- ja kuunimed lahendatakse Intl.DateTimeFormati kaudu aktiivse keelekeskkonnaga ning loendielemendid liidetakse Intl.ListFormat abil, nii et sidesõna ('ja' vs ',' vs keelekeskkonna-spetsiifiline vorm) vastab kasutaja keelele.
  3. 3
    Järgmised käivitusajad arvutatud väljajätuga
    nextRuns() kõnnib Date objektiga praegusest hetkest edasi, kuid jätab vahele terveid kuid, päevi või tunde, mis ei saa sobida, selle asemel et testida iga minutit. See tähendab, et võimatu ajakava nagu 30. veebruar väljub kiiresti viie-aastase horisondi kontrolli kaudu, mitte 2,6 miljonit korda tsükliseerides.
  4. 4
    Avaldis jagatakse URL-fragmendi kaudu
    Iga avaldis, mille kirjutad, kirjutatakse lehe URL-fragmenti kui #expr= (500 ms viivitusega window.history.replaceState kaudu). Fragmenti ei saadeta kunagi serverisse; leht taastatakse sellest laadimisel, nii et URL-i jagamine või järjehoidjatesse lisamine taastab täpse avaldise ilma ühegi serveri olekuta.

Seotud tööriistad

Korduma kippuvad küsimused