Convertor gratuit

Expresia Cron Generator

Generați, explicați și validați expresii cron instantaneu în browser. Generator vizual și analizator de expresii - gratuit, privat și pe partea clientului.

Expresia Cron
0 */6 * * *
Descriere care poate fi citită de om
Every minute
Următoarele 5 curse programate
Calculating...

Despre acest instrument

Expresiile Cron sunt cinci (sau șase, în funcție de sistem) câmpuri separate prin spațiu, care descriu un program: minut, oră, zi din lună, lună și zi din săptămână. Fiecare câmp acceptă valori numerice, intervale, liste, incremente și metacaractere. Cron a fost de facto formatul de programare Unix de la sfârșitul anilor 1970 și este acum folosit cu mult dincolo de Unix - de Kubernetes CronJobs, GitHub Actions, regulile AWS EventBridge, joburile Jenkins și aproape orice alt sistem de programare din producție.

Citirea și scrierea manuală a expresiilor cron este predispusă la erori. Câmpurile sunt poziționale, interacțiunea dintre ziua lunii și ziua săptămânii nu este evidentă (o valoare din oricare câmp declanșează jobul, nu ambele), iar greșelile produc în tăcere programe care arată corect, dar se declanșează la momente nepotrivite. Un generator care traduce programele în limba engleză simplă în sintaxa cron corectă evită aceste greșeli.

Acest instrument oferă două direcții: construirea unei expresii cron dintr-o formă prietenoasă (în fiecare luni la 9:00, la fiecare 5 minute în timpul programului de lucru) și explicarea unei expresii cron existente în termeni umani. Ambele rulează în browser fără nicio interacțiune cu serverul.

De ce să folosiți un generator Cron

Sintaxa Cron este densă și neiertătoare. Greșelile obișnuite includ numerotarea confuză a zilei din săptămână (duminica este 0 sau 7, în funcție de sistem), uitarea de semantica SAU de utilizare a zilei din lună și zilei săptămânii și înțelegerea greșită a sintaxei de increment (*/5 înseamnă fiecare 5 începând de la 0). Un generator le prinde prin construcție - expresiile produse se potrivesc cu ceea ce ați descris în formular.

Citirea expresiilor existente este la fel de dificilă. Un program precum 0 9 * * 1-5 se citește ca în fiecare zi a săptămânii la ora 9 AM odată ce cunoașteți sintaxa, dar oricine nu este familiarizat cu cron trebuie să caute fiecare câmp. Explicarea expresiei în termeni umani este mai rapidă decât învățarea sintaxei pentru interacțiuni unice.

Cum se utilizează

Alegeți un model de program, obțineți expresia cron.

  1. Alegeți modul de generare: Construiți o expresie cron din intrări de formular (frecvență, timp, zile) sau explicați o expresie existentă în termeni umani.
  2. Configurați programul: Alegeți frecvența (în fiecare minut, în fiecare oră, în fiecare zi, în fiecare săptămână, în fiecare lună, personalizat). Specificați orele, zilele și intervalele după cum este necesar. Formularul constrânge intrările la combinații valide.
  3. Generați sau explicați: Generarea produce sintaxa cron standard (5 câmpuri). Explicația defalcă fiecare câmp și oferă un rezumat care poate fi citit de om.
  4. Utilizați în programatorul dvs: Inserați expresia generată în specificația Kubernetes CronJob, programul GitHub Actions, AWS EventBridge sau planificatorul platformei dvs.

Cazuri comune de utilizare

Detalii tehnice

Cron standard are cinci câmpuri: minute (0–59), oră (0–23), ziua lunii (1–31), luna (1–12), ziua săptămânii (0–6 sau 0–7, ambele duminică). Fiecare câmp acceptă o singură valoare, listă separată prin virgulă, interval cu cratima, increment cu / sau wildcard cu *.

Semantica SAU de utilizare în ziua lunii și în ziua săptămânii: dacă oricare dintre ele este setată la o valoare care nu este wildcard, jobul rulează atunci când oricare dintre ele se potrivește. Acest lucru este contraintuitiv, dar se potrivește cu comportamentul cron POSIX. Setarea ambelor câmpuri produce un program mai larg, nu unul mai restrâns.

Extensiile variază în funcție de implementare. Unii acceptă un al șaselea câmp pentru secunde (Quartz, Spring); unii accepta? ca alternativă wildcard; unele includ comenzi rapide @yearly, @monthly, @daily. Generatorul produce cron standard cu 5 câmpuri, potrivit pentru majoritatea sistemelor.

Cele mai bune practici

Întrebări frecvente

Care este formatul de expresie cron?
Cron standard folosește 5 câmpuri: minute (0-59), oră (0-23), ziua lunii (1-31), luna (1-12), ziua săptămânii (0-7, unde 0 și 7 sunt duminică). Caractere speciale: * (oricare), , (listă), - (interval), / (pas).
Cum setez o sarcină să ruleze la fiecare 5 minute?
Folosiți */5 în câmpul minutelor: „*/5 * * * *”. /5 înseamnă „fiecare a 5-a valoare”. În mod similar, */15 = la fiecare 15 minute, */2 = la fiecare 2 minute.
Ce fus orar folosește cron?
Cron utilizează de obicei fusul orar al sistemului. Pe serverele Linux, acesta este de obicei UTC, dacă nu este configurat altfel. Serviciile cloud (AWS, GCP) sunt adesea implicite la UTC. Verificați întotdeauna setarea fusului orar al sistemului dvs.
Este acesta același format folosit de GitHub Actions?
GitHub Actions folosește același format de 5 câmpuri, dar rulează în fusul orar UTC. AWS CloudWatch și Kubernetes CronJobs folosesc și ele acest format. Unele sisteme precum Quartz folosesc un format extins de câmp 6-7 cu secunde.
Care este diferența dintre 0 în ziua săptămânii și 7?
Ambele înseamnă duminica. POSIX cron acceptă 0–6 sau 0–7. Utilizați orice implementare cron specifică preferă; majoritatea le acceptă pe amândouă.
Explicația este corectă pentru cron non-standard?
Vizează cron standard cu 5 câmpuri. Este posibil ca extensiile Quartz (cu secunde), variantele AWS EventBridge și alte dialecte să nu fie analizate corect. Confirmați cu documentația sistemului de destinație.
Expresia mea este trimisă la un server?
Nu. Generarea și explicația au loc în browserul dvs.
Cum rămâne cu comenzile rapide @anuale, @lunare?
Implementările cron obișnuite acceptă @yearly, @monthly, @weekly, @daily, @hourly și @reboot ca scurtături pentru programele comune. Generatorul produce expresii standard cu 5 câmpuri; puteți înlocui manual comenzile rapide dacă planificatorul dvs. le acceptă.