Explicateur Cron en ligne | Décodez vos expressions cron | Awesome Toolkit

Explicateur d'Expressions Cron

Collez une expression cron et obtenez une explication en langage naturel + les 5 prochaines exécutions. Outil nécessaire DevOps.

Par Marshkalk

Comment utiliser l'Explicateur Cron

  1. Saisissez une expression cron dans le champ (5 champs séparés par des espaces) ou cliquez sur un preset.
  2. Cliquez sur Expliquer pour obtenir une description en langage naturel et les 5 prochaines exécutions planifiées.

Format d'une expression cron

Une expression cron standard comporte 5 champs séparés par des espaces :

ChampValeurs autoriséesCaractères spéciaux
Minute0-59* , - /
Heure0-23* , - /
Jour du mois1-31* , - / ?
Mois1-12* , - /
Jour de la semaine0-6 (0 = dimanche)* , - /

Caractères spéciaux

  • *, correspond à toute valeur dans le champ
  • */n, toutes les n unités (ex. */5 dans les minutes = toutes les 5 minutes)
  • a-b, une plage (ex. 1-5 dans le jour de la semaine = lundi au vendredi)
  • a,b,c, une liste de valeurs spécifiques (ex. 0,6 = dimanche et samedi)

Expressions cron courantes

ExpressionSignification
* * * * *Chaque minute
0 * * * *Toutes les heures, à l'heure pile
0 0 * * *Tous les jours à minuit
0 9 * * 1-5Jours ouvrés à 9h00
0 0 * * 0Tous les dimanches à minuit
0 0 1 * *Le 1er de chaque mois à minuit
*/15 * * * *Toutes les 15 minutes
0 0 1 1 *Une fois par an (1er janvier à minuit)

Où cron est utilisé ?

Cron est le planificateur de tâches standard sur Unix/Linux (crontab -e pour éditer). Il est aussi utilisé dans les environnements cloud : AWS EventBridge, déclencheur schedule de GitHub Actions, pipelines GitLab CI, Kubernetes CronJobs, et de nombreux panneaux de contrôle d'hébergement (cPanel, Plesk). La syntaxe est identique dans tous ces environnements, avec de légères variantes sur certaines plateformes qui ajoutent un champ secondes.

Différences entre plateformes et pièges courants

La syntaxe cron n'est pas entièrement standardisée. Ces différences font échouer les tâches lors d'un changement de plateforme :

PlateformeChampsDifférences par rapport à Linux cron
Linux crontab5 (min heure jour-mois mois jour-semaine)Implémentation de référence
GitHub Actions schedule5UTC uniquement. Intervalle minimum : toutes les 5 min. Les tâches peuvent être retardées sous charge.
AWS EventBridge6 (min heure dom mois dow année)Utilise ? pour "aucune valeur" sur dom/dow (impossible de spécifier les deux). Champ année ajouté.
Quartz Scheduler (Java)7 (sec min heure dom mois dow année)Champ secondes en position 1. Numérotation des jours différente : 1=dimanche dans Quartz.
Kubernetes CronJob5Syntaxe Linux standard. Support des fuseaux horaires ajouté dans Kubernetes 1.27 (spec.timeZone).

Piège du fuseau horaire : Linux cron s'exécute dans le fuseau horaire local du serveur. 0 9 * * 1-5 signifie 9h00 heure serveur, pas l'heure locale de l'utilisateur. Si votre serveur tourne en UTC et vos utilisateurs sont en CET (UTC+1), la tâche se déclenche à 10h00 pour eux. Définissez toujours CRON_TZ dans votre crontab pour être explicite.

Jour du mois ET jour de la semaine combinés : Sur Linux, si dom et dow sont tous les deux définis (aucun n'est *), la tâche s'exécute quand l'une ou l'autre condition est vraie (logique OU). 0 9 1 * 1 s'exécute à 9h00 le 1er du mois ET tous les lundis.