Una programació necessita més que una expressió aparentment correcta. Els mateixos cinc camps poden produir instants diferents segons la zona horària, i una expressió vàlida pot descriure una necessitat equivocada. Abans de configurar una tasca, escriu què ha de passar, quin rellotge importa i com reconeixeràs un resultat correcte.
El generador de cron ajuda a revisar aquesta decisió. Valida una expressió Unix admesa i mostra dates coincidents. No instal·la cap crontab, no contacta amb un servidor ni executa treballs. El resultat és una prova per revisar una configuració que després aplicaràs al sistema responsable de fer-la funcionar.
Converteix la necessitat en una regla de calendari
Imagina un equip que necessita un informe a les 09:00 de cada dia feiner a Madrid. Primer aclareix si «feiner» significa de dilluns a divendres o el calendari real de l'organització. Cron permet expressar la primera definició; festius, tancaments excepcionals i dissabtes laborables necessiten lògica addicional. Sense aquesta distinció, una expressió impecable pot generar informes en dies inadequats.
Els cinc camps són minut, hora, dia del mes, mes i dia de la setmana, en aquest ordre. L'informe es representa amb 0 9 * * 1-5, triant Europe/Madrid a part. UTC és la zona predeterminada de l'eina. Deixar-la seleccionada significaria les nou UTC, que és una necessitat diferent de les nou del rellotge local de Madrid.
Conserva junts l'expressió, la zona i el comportament esperat. Una captura amb només cinc camps perd informació. Afegeix una frase sobre els festius i el sistema que executarà l'informe, perquè una altra persona pugui entendre la regla i el seu context operatiu.
Comença amb un exemple que es pugui repetir
Fes servir aquestes dades fixes abans de provar el moment actual:
Expressió: */15 * * * *
Zona: UTC
Després de: 2026-01-01T00:00:00Z
Primeres coincidències:
2026-01-01T00:15:00Z
2026-01-01T00:30:00Z
2026-01-01T00:45:00Z
Són dates històriques de comprovació, no pas properes execucions respecte del moment de lectura. El límit «després de» és exclusiu: la coincidència exacta de mitjanit no s'inclou. El camp de minuts selecciona zero, quinze, trenta i quaranta-cinc dins de cada hora; les hores següents repeteixen aquestes posicions.
Anota els tres resultats abans de modificar res. Si producció interpreta les mateixes dades d'una altra manera, investiga el dialecte cron, l'instant de referència i la zona. Desplaçar l'hora fins que la primera data sembli adequada pot amagar un error que tornarà al canvi de dia o d'estació.
Després prova l'informe dels dies feiners i observa diverses dates, incloent-hi el pas de divendres a dilluns. La previsualització aporta proves concretes del calendari; la necessitat escrita indica quines són rellevants per a aquesta tasca.
Revisa cada camp per separat
Obre l'eina i introdueix cinc camps sense ordres, noms d'usuari ni declaracions d'entorn. Tria expressament una zona admesa. Resol la validació abans d'interpretar dates: un resultat antic que conservis a les notes no demostra el comportament d'una expressió nova invàlida.
Construeix la regla de manera progressiva. Comença amb el minut i l'hora; després restringeix dies de la setmana o del mes. Fes servir llistes per a valors separats, rangs per a conjunts continus i passos per a posicions repetides dins d'un camp. Després de cada canvi, comprova que expressió i dates continuen responent a la intenció.
Per a una programació important, recull exemples del començament i final de mes, del pas per un cap de setmana i d'un canvi horari si la zona en té. Conserva els instants UTC al costat de les etiquetes locals. Això permet comparar-los amb registres reals sense reconstruir quin desplaçament corresponia a una hora ambigua.
Abans de copiar l'expressió al sistema executor, consulta'n la documentació. Una previsualització de cinc camps no prova compatibilitat amb un analitzador de sis, una sintaxi particular d'un proveïdor o un servei que obtingui la zona d'una altra configuració.
Entén els conjunts i la combinació dels dies
L'asterisc admet tots els valors d'un camp. Una llista com 1,3,5 tria valors separats; un rang com 1-5 inclou els extrems. El pas s'aplica dins del camp i no mesura temps continu des de l'execució anterior. Així, */35 als minuts selecciona el minut zero i el trenta-cinc de cada hora. En travessar el canvi d'hora, la distància és de vint-i-cinc minuts.
Els dos camps de dia mereixen una revisió específica. Quan cap comença amb asterisc, l'eina aplica la combinació Unix OR: n'hi ha prou que coincideixi el dia del mes o el de la setmana. Per exemple, 0 9 1 * 1 indica les nou del primer dia de cada mes i de cada dilluns. No significa només els mesos que comencen en dilluns. Si algun comença amb *, inclòs */n, han de coincidir totes dues seleccions. Així, 0 9 */1 * 1 selecciona dilluns; substituir */1 per 1-31 canvia la combinació a OR.
El manual de crontab de Cronie explica aquests conceptes i altres variants. UtilX admet un subconjunt numèric concret: nombres, asteriscos, llistes, rangs i passos. Que una extensió aparegui al manual general no implica que aquesta eina l'accepti.
Detecta regles plausibles que no expressen la intenció
Un sisè camp sovint crea confusió. Alguns programadors inclouen segons i altres afegeixen un any. Eliminar un camp arbitrari pot canviar la regla sense fer evident l'error. Identifica el dialecte d'origen, tradueix la necessitat i comprova dates al destí. Noms, macros i extensions com L, W, # i ? queden fora del format admès.
Un altre error és combinar data mensual i dia setmanal esperant una condició AND. Prova una data que només compleixi un dels camps. Aquest cas revela el malentès millor que una primera coincidència que satisfà totes dues condicions per casualitat.
Una previsualització buida o incompleta també necessita interpretació. La combinació pot ser impossible o tan poc freqüent que no hi hagi deu coincidències en l'horitzó de cinc anys. No dedueixis que mai no s'executarà només perquè la llista no és completa. Revisa separadament la validació, la zona i la regla de calendari.
Comprova els canvis horaris amb instants concrets
Una zona amb nom conté regles regionals; un desplaçament fix descriu una relació amb UTC. Europe/Madrid no equival a mantenir sempre el mateix desplaçament. La base de zones horàries d'IANA manté aquests canvis i l'entorn en rep les actualitzacions. Les projeccions depenen de les regles disponibles.
El cas diari 30 2 * * * a Europe/Madrid mostra per què cal comprovar el motor. El 29 de març de 2026, l'hora inexistent 02:30 passa a les 03:30 locals, 01:30Z. El 25 d'octubre de 2026 es tria la primera 02:30, 00:30Z, i no s'afegeix la segona. Aquesta prova correspon a la regla diària indicada; no s'ha de generalitzar a qualsevol expressió.
Contrasta aquesta política amb l'executor real. Per a un informe vinculat a l'obertura d'una oficina, una zona regional expressa la necessitat. Per a un procés acordat explícitament en UTC, conserva UTC. Documenta la decisió perquè un canvi de servidor no alteri silenciosament el rellotge esperat.
Separa el càlcul de l'execució
L'eina cerca fins a deu dates posteriors dins de cinc anys i admet expressions de fins a 256 caràcters. No desplega tot el calendari futur d'una tasca. Una regla poc freqüent pot produir menys dates en aquest interval; una combinació impossible necessita una correcció, no una cerca indefinidament més llarga.
La pàgina no executa ordres, no desa tasques programades ni garanteix lliuraments. Tampoc determina si una execució se solaparà amb l'anterior, si l'equip estarà apagat o si un reintent duplicarà l'informe. Aquestes propietats corresponen a l'executor i a l'aplicació.
Si necessites un únic informe per període de negoci, dissenya i prova aquesta propietat per separat. L'expressió és una part de la solució, juntament amb els registres d'execució, la gestió dels errors i una definició precisa del període que s'està processant.
Conserva proves útils per al manteniment
Desa expressió, zona, instant inicial i dates esperades representatives. Revisa els límits de setmana i mes, la combinació OR dels dies restringits i els canvis d'hora pertinents. Indica si la necessitat segueix UTC o un rellotge local, i què passa amb els festius que cron no distingeix.
Per a l'exemple fix, exigeix 00:15, 00:30 i 00:45 UTC després de mitjanit de l'1 de gener de 2026. Per a la configuració real, compara amb l'executor abans d'activar-la. Mantén les proves operatives separades per no confondre una data calculada correctament amb un informe lliurat correctament.
Fonts: manual de crontab de Cronie i base de zones horàries d'IANA.