Décoder une Expression Cron - en clair
Décodeur d’expression cron
Cinq champs : minute, heure, jour du mois, mois, jour de la semaine.
Champ par champ
| Champ | Écrit | Signifie |
|---|
Prochaines exécutions
| # | S’exécute le |
|---|
Les heures sont affichées dans le fuseau de votre appareil. Le serveur qui exécute la tâche peut être dans un autre.
Ce que fait cet outil
La syntaxe cron est compacte et facile à mal lire, et le prix d’une mauvaise lecture, c’est une tâche qui tourne au mauvais moment pendant des mois avant que quiconque s’en aperçoive. Cette page retraduit la ligne en phrase et, plus utile encore, montre les dates réelles d’exécution.
Comment l’utiliser
- 1 Collez votre ligne cron, ou partez d’un des exemples.
- 2 Lisez la phrase et vérifiez chaque champ un par un.
- 3 Vérifiez avec la liste des prochaines exécutions : c’est là que les erreurs se voient.
Les cinq champs
Toujours dans cet ordre, toujours séparés par des espaces. Chacun accepte un nombre, une liste comme 1,15, une plage comme 9-17, un pas comme */5, ou une étoile signifiant toutes les valeurs.
| # | Champ | Valeurs admises | Remarque |
|---|---|---|---|
| 1 | Minute | 0-59 | — |
| 2 | Heure | 0-23 | — |
| 3 | Jour du mois | 1-31 | Voir la règle des jours ci-dessous |
| 4 | Mois | 1-12 | JAN-DEC également acceptés |
| 5 | Jour de la semaine | 0-7 | 0 et 7 sont tous deux dimanche ; SUN-SAT acceptés |
Le piège du jour du mois
Quand le champ jour du mois et le champ jour de la semaine valent tous deux autre chose qu’une étoile, cron exécute la tâche si l’un ou l’autre correspond, pas les deux. Ainsi « 0 0 1 * MON » se déclenche le 1er de chaque mois et tous les lundis. Cela surprend presque tout le monde la première fois ; le décodeur le signale quand c’est le cas.
Les pas ne signifient pas « toutes les N à partir de maintenant »
*/20 dans le champ des minutes signifie les minutes 0, 20 et 40 de chaque heure, pas « vingt minutes après la dernière exécution ». Si une exécution dure 25 minutes, la suivante démarre quand même à la minute 40. Les pas comptent depuis le début de la plage : 5-20/5 compte à partir de 5.
Fuseaux horaires et heures qui disparaissent
Cron suit l’horloge du serveur, pas la vôtre : une tâche réglée à 02h30 peut se déclencher à une heure locale différente de celle attendue. Pire, dans les régions à heure d’été, cette heure n’existe pas une nuit par an et se produit deux fois une autre. Pour tout ce qui ne doit être ni sauté ni répété, planifiez hors de 01h00-03h00.