tigtools

Cron-uttrykk-forklarer

Skriv inn en cron-plan med 5 felter for å se hva den betyr og når den kjører neste gang. Alt beregnes i nettleseren din.

Kjører i nettleseren din Ingen registrering

Fem felter: minutt, time, dag i måneden, måned, ukedag. Makroer som @daily fungerer også.

Vanlige tidsplaner

Betydning

Hvert 15. minutt, mellom 09:00 og 17:59, på mandag til og med fredag.

Felter

Minutt
*/15
Time
9-17
Dag i måneden
*
Måned
*
Ukedag
1-5
Tidssone

Neste 10 kjøringer

    Slik bruker du det

    1. Skriv eller lim inn et cron-uttrykk, eller velg en av de vanlige tidsplanene.
    2. Les betydningen på vanlig språk. Ugyldige felt vises med årsaken.
    3. Sjekk de neste 10 kjøretidspunktene, vist i din lokale tidssone. Bytt til UTC hvis serveren din kjører i UTC.
    4. Kopier kjøretidspunktene for å dele dem, eller juster uttrykket til tidsplanen er slik du trenger.

    Slik fungerer det

    Et standard cron-uttrykk, slik det brukes av crontab på Linux (Vixie cron og cronie) og mange CI- og hosting-planleggere, har fem felt atskilt med mellomrom: minutt (0–59), time (0–23), dag i måneden (1–31), måned (1–12 eller JAN–DEC) og ukedag (0–7 eller SUN–SAT, der både 0 og 7 betyr søndag). Hvert felt godtar * for alle verdier, en enkelt verdi, et intervall som 1-5, en liste som 1,15,30 og et trinn som */15 (hver 15. verdi) eller 9-17/2 (annenhver time fra 9 til 17). Navn skiller ikke mellom store og små bokstaver. Snarveiene @yearly (eller @annually), @monthly, @weekly, @daily (eller @midnight) og @hourly står for henholdsvis 0 0 1 1 *, 0 0 1 * *, 0 0 * * 0, 0 0 * * * og 0 * * * *.

    Feltet for dag i måneden og feltet for ukedag følger en regel som overrasker mange. Hvis ett av feltene starter med *, må en dag oppfylle begge feltene. Hvis begge feltene er begrenset, treffer dagen når ett av dem gjør det: 0 0 13 * 5 kjøres den 13. hver måned og også hver fredag, ikke bare fredag den 13. Fordi vurderingen er om feltet starter med *, regnes også et trinn som */2 som ubegrenset. Dette samsvarer med Vixie cron og cronie; noen få andre planleggere oppfører seg annerledes.

    Neste kjøretidspunkter beregnes i nettleserens tidssone, eller i UTC, som er det de fleste servere og skyplanleggere bruker. Cron selv bruker tidssonen til maskinen den kjører på. Rundt overgangen til og fra sommertid er ekte cron-tjenester forskjellige; dette verktøyet utelater lokale tider som ikke finnes når klokken stilles fram, og viser en gjentatt time bare én gang. Utvidede syntakser støttes ikke: Quartz-uttrykk med seks eller syv felt for sekunder eller år, og spesialtegnene ?, L, W og #.

    Eksempler

    Helsesjekk i kontortiden

    */15 9-17 * * 1-5 betyr hvert 15. minutt mellom 09:00 og 17:59, mandag til fredag. Siste kjøring hver dag er kl. 17:45.

    Nattlig sikkerhetskopiering

    30 2 * * * kjøres kl. 02:30 hver dag. Hvis serveren bruker UTC og du er i New York, viser listen over neste kjøringer i UTC-modus tidspunktene serveren faktisk vil bruke.

    Dagfeltfellen

    0 9 1 * 1 ser ut som «kl. 9:00 den første i måneden hvis den er en mandag», men den kjører kl. 09:00 den 1. hver måned og i tillegg hver mandag. For å kjøre bare den første mandagen, planlegg 0 9 1-7 * * og sjekk ukedagen inne i skriptet.

    Ofte stilte spørsmål

    Hva betyr */5 i cron?

    Det betyr hver femte verdi i feltet, med start på den laveste verdien. I minuttfeltet kjører */5 ved minuttene 0, 5, 10 … 55. I timefeltet kjører */5 ved 0, 5, 10, 15 og 20, så gapet fra 20:00 til midnatt er fire timer, ikke fem.

    Hvorfor kjører jobben min på flere dager enn forventet?

    Når både feltet for dag i måneden og feltet for ukedag er begrenset, kjører cron på dager som samsvarer med ett av dem. For eksempel kjører 0 0 15 * 1 den 15. og hver mandag. Sett ett av de to feltene til * for å kreve bare det andre.

    Hvilken tidssone bruker cron?

    Tidssonen til systemet på serveren som kjører cron-tjenesten, med mindre crontab-filen angir CRON_TZ eller TZ (støttes av cronie). Skytjenester for tidsplanlegging bruker ofte UTC som standard. Bruk UTC-bryteren for å se tidspunktene en UTC-server ville brukt.

    Kan jeg bruke sekunder eller et årsfelt?

    Ikke i standard cron, som har oppløsning på ett minutt og fem felter. Formater med seks og sju felter med sekunder og år hører til Quartz, Spring og lignende biblioteker, og støttes ikke av dette verktøyet.

    Er 0 eller 7 søndag?

    Begge deler. I feltet for ukedag betyr både 0 og 7 søndag, 1 er mandag og 6 er lørdag. Du kan også skrive navnene med tre bokstaver, SUN til SAT.

    Personvern

    Uttrykket analyseres og kjøretidspunktene beregnes i nettleseren din. Ingenting du skriver inn lastes opp, lagres eller tas med i analyse.