Cron-udtryksparser
Analyser cron-udtryk og se en letlæselig forklaring på, hvornår de kører. Perfekt til udviklere og systemadministratorer, der skal oprette eller forstå cron-jobplaner. Undgå fejl i planlægningen ved at visualisere præcis, hvornår dine cron-udtryk vil blive udført.
Ofte stillede spørgsmål
Hvad er et cron-udtryk?
Et cron-udtryk er en streng med 5 eller 6 felter, der definerer en tidsplan for automatiserede opgaver i Unix-lignende systemer. Felterne repræsenterer: minut (0-59), time (0-23), månedsdag (1-31), måned (1-12) og ugedag (0-7, hvor 0 og 7 er søndag). For eksempel betyder '0 9 * * 1' 'kør kl. 9:00 hver mandag'.
Hvordan opretter jeg et cron-udtryk til en bestemt tidsplan?
Start med fem stjerner (* * * * *), der repræsenterer minut, time, dag, måned og ugedag. Erstat stjernerne med specifikke værdier eller intervaller. For eksempel: '30 14 * * *' kører kl. 14:30 hver dag, '0 0 1 * *' kører ved midnat den 1. i hver måned, '*/15 * * *' kører hvert 15. minut. Brug vores parser til at kontrollere, at dit udtryk gør, hvad du forventer.
Hvad betyder asterisken (*) i cron?
En stjerne betyder 'alle' eller 'enhver' for den pågældende tidsenhed. For eksempel betyder * i timefeltet hver time, og * i dagfeltet betyder hver dag. Så '0 * * * *' betyder 'ved minut 0 i hver time' (hver time), mens '* * * *' betyder 'hvert minut'. Det er jokertegnet, der matcher alle mulige værdier for det pågældende felt.
Hvordan kører jeg et cron-job hvert 5. minut eller hver N. time?
Brug syntaksen for trinværdier: */N. For hvert 5. minut: '*/5 * * * *'. For hver 3. time: '0 */3 * * *'. Syntaksen */N betyder 'hver n'te værdi' - så */5 i minutfeltet betyder minut 0, 5, 10, 15 osv. Du kan også bruge intervaller med trin som '0-30/5' for hvert 5. minut i løbet af den første halve time.
Kan jeg kun køre et cron-job på hverdage?
Ja, ja! Brug 1-5 i feltet for ugedag (det 5. felt). For eksempel kører '0 9 * * 1-5' kl. 9 mandag til fredag. Mandag er 1, og fredag er 5. Du kan også angive specifikke dage: "0 9 * 1,3,5" kører kun kl. 9 mandag, onsdag og fredag.
Hvad er forskellen på månedsdag og ugedag?
Det er to forskellige måder at angive, hvilke dage et job kører. Månedens dag (3. felt) bruger datoerne 1-31, mens ugedagen (5. felt) bruger 0-7 (0 og 7 er søndag). Hvis begge er angivet (ikke *), kører jobbet, når EN AF BETINGELSERNE matcher. For eksempel kører '0 0 1 * 1' ved midnat den 1. i hver måned OG hver mandag.
Hvordan opretter jeg et cron-udtryk, der kun gælder i arbejdstiden?
Fra kl. 9 til 17 på hverdage: '0 9-17 * * 1-5' kører i starten af hver time. For hvert 30. minut i åbningstiden: '*/30 9-17 * * 1-5'. Timeintervallet 9-17 dækker kl. 9-17, og 1-5 begrænser udførelsen til mandag til fredag.
Hvad er forskellen mellem '0 0 * * *' og '@daily'?
De er ens - begge kører ved midnat hver dag. Mange cron-implementeringer understøtter særlige strenge som @daily, @hourly, @weekly, @monthly og @yearly som genveje. De er mere læsevenlige, men mindre fleksible end fulde udtryk. Brug genveje til almindelige intervaller og fulde udtryk til brugerdefinerede tidsplaner.
Kan cron-udtryk håndtere tidszoneforskelle?
Standard cron-udtryk kører baseret på serverens systemtid. For at håndtere tidszoner skal du enten indstille serverens tidszone korrekt eller beregne tidsforskellen. Nogle avancerede cron-implementeringer understøtter tidszonespecifikationer, men det grundlæggende 5-felt-format indeholder ikke tidszoneoplysninger.
Hvordan tester jeg, om mit cron-udtryk er korrekt, før jeg distribuerer det?
Brug vores Cron Expression Parser til at verificere, at dit udtryk viser den forventede beskrivelse af tidsplanen. Parseren forklarer på almindeligt engelsk, hvornår dit job vil køre, og hjælper dig med at fange fejl som '0 9 31 2 *' (den 31. februar findes ikke), før du distribuerer til produktionen.