Apie šį įrankį
Cron išraiškos yra penki (arba šeši, priklausomai nuo sistemos) tarpais atskirti laukai, apibūdinantys tvarkaraštį: minutė, valanda, mėnesio diena, mėnuo ir savaitės diena. Kiekvienas laukas priima skaitines reikšmes, diapazonus, sąrašus, žingsnius ir pakaitos simbolius. „Cron“ buvo de facto Unix planavimo formatas nuo aštuntojo dešimtmečio pabaigos ir dabar naudojamas toli už Unix – Kubernetes CronJobs, GitHub Actions, AWS EventBridge taisyklės, Jenkins darbai ir beveik visos kitos gamybos planavimo sistemos.
Skaitant ir rašant cron išraiškas ranka yra klaidų. Laukai yra poziciniai, mėnesio dienos ir savaitės dienos sąveika nėra akivaizdi (vertė bet kuriame lauke suaktyvina užduotį, o ne abu), o klaidos tyliai sukuria tvarkaraščius, kurie atrodo teisingi, bet suveikia netinkamu laiku. Generatorius, kuris paprastus angliškus tvarkaraščius paverčia teisinga cron sintaksė, išvengia šių klaidų.
Šis įrankis siūlo dvi kryptis: sukurti cron išraišką iš draugiškos formos (kiekvieną pirmadienį 9 val., kas 5 minutes darbo valandomis) ir paaiškinti esamą cron išraišką žmogiškai. Abu veikia jūsų naršyklėje be jokios serverio sąveikos.
Kodėl verta naudoti Cron generatorių
Cron sintaksė yra tanki ir negailestinga. Dažnos klaidos yra paini savaitės dienų numeracija (sekmadienis yra 0 arba 7, priklausomai nuo sistemos), pamirštama, kad vartojama mėnesio diena ir savaitės diena, ARBA semantika ir neteisingas prieaugio sintaksės supratimas (*/5 reiškia kas 5, pradedant nuo 0). Generatorius juos sugauna pagal konstrukciją – sukurtos išraiškos atitinka tai, ką apibūdinote formoje.
Taip pat sunku skaityti esamas išraiškas. Tvarkaraštis, pvz., 0 9 * * 1–5, skaitomas kaip kiekvieną darbo dieną 9 val. ryto, kai žinote sintaksę, bet kas nepažįsta cron, turi ieškoti kiekvieno lauko. Paaiškinti išraišką žmogiškąja prasme yra greičiau nei išmokti vienkartinių sąveikų sintaksę.
Kaip naudoti
Pasirinkite tvarkaraščio modelį ir gaukite cron išraišką.
- Pasirinkite generavimo režimą: Sukurkite cron išraišką iš formos įvesties (dažnis, laikas, dienos) arba paaiškinkite esamą išraišką žmogiškai.
- Sukonfigūruokite tvarkaraštį: Pasirinkite dažnį (kiekvieną minutę, kas valandą, kiekvieną dieną, kiekvieną savaitę, kiekvieną mėnesį, pasirinktinai). Jei reikia, nurodykite laiką, dienas ir intervalus. Forma apriboja įvestis iki galiojančių derinių.
- Sukurkite arba paaiškinkite: Generation sukuria standartinę cron sintaksę (5 laukai). Paaiškinimas išskaido kiekvieną lauką ir pateikia žmonėms suprantamą santrauką.
- Naudokite savo tvarkaraštyje: Įklijuokite sugeneruotą išraišką į „Kubernetes CronJob“ specifikaciją, „GitHub Actions“ tvarkaraštį, „AWS EventBridge“ arba savo platformos planuoklį.
Techninės detalės
Standartinis cron turi penkis laukus: minutė (0–59), valanda (0–23), mėnesio diena (1–31), mėnuo (1–12), savaitės diena (0–6 arba 0–7, abu sekmadieniai). Kiekvienas laukas priima vieną reikšmę, kableliais atskirtą sąrašą, diapazoną su brūkšneliu, prieaugį su / arba pakaitos simbolį su *.
Mėnesio dienos ir savaitės dienos naudojimas ARBA semantika: jei kuri nors nustatyta į ne pakaitos raidės reikšmę, užduotis vykdoma, kai kuri nors atitinka. Tai prieštaringa, bet atitinka POSIX cron elgesį. Nustačius abu laukus gaunamas platesnis grafikas, o ne siauresnis.
Plėtiniai skiriasi priklausomai nuo įgyvendinimo. Kai kurie sekundėms priima šeštąjį lauką (kvarcas, spyruoklė); kai kurie priima? kaip pakaitos simbolio alternatyva; kai kuriuose yra @yearly, @monthly, @daily spartieji klavišai. Generatorius gamina standartinį 5 laukų cron, tinkantį daugumai sistemų.
Dažnai užduodami klausimai
- Kas yra cron išraiškos formatas?
- Standartinis cron naudoja 5 laukus: minutę (0–59), valandą (0–23), mėnesio dieną (1–31), mėnesį (1–12), savaitės dieną (0–7, kur 0 ir 7 yra sekmadienis). Specialieji simboliai: * (bet kuris), , (sąrašas), - (diapazonas), / (žingsnis).
- Kaip nustatyti, kad darbas būtų vykdomas kas 5 minutes?
- Minučių laukelyje naudokite */5: „*/5 * * * *“. /5 reiškia „kas 5-ą reikšmę“. Panašiai */15 = kas 15 minučių, */2 = kas 2 minutes.
- Kokią laiko juostą naudoja cron?
- Cron paprastai naudoja sistemos laiko juostą. Linux serveriuose tai paprastai yra UTC, nebent sukonfigūruota kitaip. Debesų paslaugos (AWS, GCP) dažnai pagal numatytuosius nustatymus yra UTC. Visada patikrinkite savo sistemos laiko juostos nustatymus.
- Ar tai tas pats formatas, kurį naudoja „GitHub Actions“?
- „GitHub Actions“ naudoja tą patį 5 laukų formatą, bet veikia UTC laiko juosta. AWS CloudWatch ir Kubernetes CronJobs taip pat naudoja šį formatą. Kai kurios sistemos, tokios kaip Quartz, naudoja išplėstinį 6–7 laukų formatą su sekundėmis.
- Kuo skiriasi 0 savaitės dieną ir 7?
- Abu reiškia sekmadienį. POSIX cron priima 0–6 arba 0–7. Naudokite bet kurį jūsų konkretų cron diegimą; dauguma priima abu.
- Ar nestandartinio cron paaiškinimas yra tikslus?
- Jis skirtas standartiniam 5 laukų cron. Kvarciniai plėtiniai (su sekundėmis), AWS EventBridge variantai ir kiti dialektai gali būti netinkamai išanalizuoti. Patvirtinkite pagal paskirties sistemos dokumentus.
- Ar mano išraiška siunčiama į serverį?
- Ne. Generavimas ir paaiškinimas vyksta jūsų naršyklėje.
- Ką apie @yearly, @monthly sparčiuosius klavišus?
- Įprasti cron diegimai palaiko @yearly, @monthly, @weekly, @daily, @hourly ir @reboot kaip bendrų tvarkaraščių sparčiuosius klavišus. Generatorius sukuria standartines 5 laukų išraiškas; galite rankiniu būdu pakeisti sparčiuosius klavišus, jei jūsų planuotojas juos priima.
Related Articles
DeveloperEssential Developer Tools: JSON, Base64, RegEx, and More
A comprehensive overview of the developer utilities every programmer should know, from data format converters to encoding tools.
9 min readDeveloper & SecurityHashing, Encryption, and Encoding Explained: A Developer's Security Guide
Understand the differences between hashing, encryption, and encoding. Learn when to use MD5, SHA-256, Base64, AES, and other cryptographic tools in your applications.
10 min readData & ProductivitySpreadsheet & Data Conversion Guide: Excel, CSV, JSON, and More
Learn how to convert between spreadsheet and data formats like Excel, CSV, JSON, and XML. Practical tips for handling data migration, cleaning, and transformation.
10 min readPrivacy & TechnologyWhy Browser-Based Tools Are the Future: No Installs, No Uploads, No Risk
Discover why browser-based tools are replacing desktop software and cloud uploads. Learn how client-side processing keeps your files private while delivering powerful functionality.
7 min read