Sådan bruger du det
- Indtast eller indsæt et cron-udtryk, eller vælg en af de almindelige tidsplaner.
- Læs betydningen på almindeligt sprog. Ugyldige felter bliver nævnt med årsagen.
- Tjek de næste 10 kørselstidspunkter, vist i din lokale tidszone. Skift til UTC, hvis din server kører i UTC.
- Kopier kørselstidspunkterne for at dele dem, eller juster udtrykket, indtil tidsplanen er det, du har brug for.
Sådan fungerer det
Et standard cron-udtryk, som det bruges af crontab på Linux (Vixie cron og cronie) og mange CI- og hosting-planlæggere, har fem felter adskilt af mellemrum: minut (0–59), time (0–23), dag i måneden (1–31), måned (1–12 eller JAN–DEC) og ugedag (0–7 eller SUN–SAT, hvor både 0 og 7 betyder søndag). Hvert felt accepterer * for alle værdier, en enkelt værdi, et interval som 1-5, en liste som 1,15,30 og et trin som */15 (hver 15. værdi) eller 9-17/2 (hver anden time fra 9 til 17). Der skelnes ikke mellem store og små bogstaver i navne. Genvejene @yearly (eller @annually), @monthly, @weekly, @daily (eller @midnight) og @hourly står for 0 0 1 1 *, 0 0 1 * *, 0 0 * * 0, 0 0 * * * og 0 * * * *.
Felterne dag i måneden og ugedag følger en regel, der overrasker mange. Hvis et af felterne starter med *, skal en dag opfylde begge felter. Hvis begge felter er begrænsede, matcher en dag, når et af dem gør det: 0 0 13 * 5 kører den 13. i hver måned og også hver fredag, ikke kun fredag den 13. Fordi testen er, om feltet starter med *, betragtes et trin som */2 også som ubegrænset. Dette svarer til Vixie cron og cronie; nogle få andre planlæggere opfører sig anderledes.
Næste kørselstidspunkter beregnes i din browsers tidszone eller i UTC, som de fleste servere og cloud-planlæggere bruger. Cron selv bruger tidszonen for den maskine, det kører på. Ved overgang til og fra sommertid er rigtige cron-dæmoner forskellige; dette værktøj udelader lokale tidspunkter, der ikke findes, når uret stilles frem, og viser en gentaget time én gang. Udvidede syntakser understøttes ikke: Quartz-udtryk med seks eller syv felter med sekunder eller år samt specialtegnene ?, L, W og #.
Eksempler
Sundhedstjek i kontortiden
*/15 9-17 * * 1-5 betyder hvert 15. minut mellem kl. 09:00 og 17:59, mandag til og med fredag. Sidste kørsel hver dag er kl. 17:45.
Sikkerhedskopi hver nat
30 2 * * * kører kl. 02:30 hver dag. Hvis serveren bruger UTC, og du er i New York, viser listen over næste kørsler i UTC-tilstand de tidspunkter, serveren faktisk vil bruge.
Dagfelt-fælden
0 9 1 * 1 ligner „9:00 den første i måneden, hvis det er mandag“, men det kører kl. 09:00 den 1. i hver måned og også hver mandag. For kun at køre den første mandag skal du bruge tidsplanen 0 9 1-7 * * og tjekke ugedagen inde i scriptet.
Ofte stillede spørgsmål
Hvad betyder */5 i cron?
Det betyder hver femte værdi i feltet, startende med den laveste værdi. I minutfeltet kører */5 ved minutterne 0, 5, 10 … 55. I timefeltet kører */5 kl. 0, 5, 10, 15 og 20, så afstanden fra kl. 20:00 til midnat er fire timer, ikke fem.
Hvorfor kører mit job på flere dage, end jeg forventede?
Når både feltet for dag i måneden og feltet for ugedag er begrænset, kører cron på dage, der matcher et af dem. F.eks. kører 0 0 15 * 1 den 15. i måneden og hver mandag. Sæt et af de to felter til * for kun at kræve det andet.
Hvilken tidszone bruger cron?
Systemtidszonen på den server, der kører cron-dæmonen, medmindre crontab-filen angiver CRON_TZ eller TZ (understøttet af cronie). Cloud-planlæggere bruger ofte UTC som standard. Brug UTC-knappen for at se de tidspunkter, en UTC-server ville bruge.
Kan jeg bruge sekunder eller et årfelt?
Ikke i standard cron, som har en opløsning på ét minut og fem felter. Formater med seks og syv felter med sekunder og år hører til Quartz, Spring og lignende biblioteker og understøttes ikke af dette værktøj.
Er 0 eller 7 søndag?
Begge. I feltet for ugedag betyder både 0 og 7 søndag, 1 er mandag, og 6 er lørdag. Du kan også skrive forkortelserne på tre bogstaver SUN til SAT.
Privatliv
Udtrykket analyseres, og kørselstidspunkterne beregnes i din browser. Intet af det, du indtaster, uploades, gemmes eller medtages i analyser.