Développeur

Analyseur d'expressions Cron

Collez n'importe quelle expression cron à 5 champs et découvrez instantanément ce qu'elle signifie en langage clair — fini de décrypter astérisques et barres obliques pour savoir quand une tâche s'exécute.

Cet outil vous a-t-il aidé ?

Qu'est-ce que Analyseur d'expressions Cron ?

Cron est la syntaxe de planification standard utilisée par les tâches cron Unix/Linux, les pipelines CI/CD, les CronJobs Kubernetes et d'innombrables autres planificateurs de tâches. Une expression cron condense un planning récurrent complet en cinq champs compacts, ce qui est puissant mais notoirement difficile à lire d'un coup d'œil — « 0 */4 * * 1-5 » signifie-t-il toutes les 4 heures les jours de semaine, ou tout autre chose ? Cet analyseur décompose une expression cron champ par champ et la traduit en une phrase en langage clair, afin que vous puissiez vérifier qu'un planning est correct avant de le déployer, ou comprendre rapidement un planning écrit par quelqu'un d'autre sans consulter une table de syntaxe cron.

Quand Utiliser Cette Calculatrice

  • Lorsque vous vérifiez un planning cron avant de déployer une tâche planifiée ou un pipeline CI/CD
  • Lorsque vous déboguez pourquoi une tâche planifiée s'est exécutée ou non à un moment inattendu
  • Lorsque vous examinez un CronJob Kubernetes ou un planning GitHub Actions écrit par un collègue
  • Lorsque vous apprenez la syntaxe cron pour un cours d'administration système ou une certification DevOps
  • Lorsque vous auditez des entrées crontab existantes lors d'une migration de serveur
  • Lorsque vous concevez un motif de planification complexe combinant plusieurs contraintes temporelles

Étapes:

  1. Collez ou saisissez une expression cron à 5 champs dans le champ de saisie.
  2. Consultez chaque champ décomposé individuellement avec sa signification.
  3. Lisez la traduction en langage clair du planning complet.
  4. Essayez un bouton de modèle pour des plannings courants comme « toutes les heures » ou « jours de semaine à 9 h ».

Formule

┌───────────── minute (0-59) │ ┌───────────── heure (0-23) │ │ ┌───────────── jour du mois (1-31) │ │ │ ┌───────────── mois (1-12) │ │ │ │ ┌───────────── jour de la semaine (0-6, dimanche=0) │ │ │ │ │ * * * * *

Cas d'utilisation

  • Vérifier un planning cron avant de déployer une tâche planifiée ou un pipeline CI/CD
  • Comprendre un CronJob Kubernetes ou une fonction planifiée sans serveur écrite par un collègue
  • Déboguer pourquoi une tâche planifiée s'est exécutée (ou non) à un moment inattendu
  • Apprendre la syntaxe cron pour un cours d'administration système ou DevOps
  • Auditer les entrées crontab existantes lors d'une migration de serveur

Avantages Clés

  • Traduit instantanément une syntaxe cron cryptique en langage clair
  • Décompose chacun des 5 champs individuellement pour plus de clarté
  • Modèles en un clic pour les plannings les plus courants
  • Aucune inscription requise, fonctionne entièrement dans votre navigateur

Conseils de Pro

  • En cas de doute, testez d'abord avec un horaire très proche pour confirmer que le planning se déclenche comme prévu
  • Utilisez des plages (1-5) plutôt que d'énumérer chaque valeur avec des virgules quand c'est possible, pour plus de lisibilité
  • Vérifiez bien le fuseau horaire de votre serveur ou planificateur — c'est la source la plus fréquente de bugs cron liés à une « mauvaise heure »
  • Pour tout ce qui dépasse un simple planning quotidien/hebdomadaire, rédigez la description en langage clair et comparez-la à votre intention avant le déploiement

Erreurs Courantes à Éviter

  • Oublier que le jour du mois et le jour de la semaine sont combinés avec OU, pas avec ET
  • Confondre la numérotation du jour de la semaine commençant à 0 (0=dimanche) avec les conventions commençant à 1 d'autres systèmes
  • Supposer que */7 dans le champ jour du mois signifie « tous les 7 jours » — cela signifie en réalité les jours 1, 8, 15, 22, 29, recommençant chaque mois
  • Oublier que la plupart des implémentations cron s'exécutent selon le fuseau horaire local du serveur, pas UTC ni celui de l'utilisateur

Termes Clés Expliqués

Cron : Un planificateur de tâches basé sur le temps utilisé dans les systèmes d'exploitation de type Unix
Crontab : Le fichier ou la commande utilisé pour définir une liste de tâches cron
Valeur de pas : La syntaxe « /N » signifiant « toutes les N unités » à partir de la valeur minimale d'un champ
CronJob : La ressource native de Kubernetes pour exécuter des tâches planifiées via cron

Concepts connexes

  • Calculateur de Différence de Temps: Calculez la durée entre deux dates et heures
  • Calculateur de Jours Jusqu'à: Comptez les jours jusqu'à une date spécifique
  • Convertisseur d'Horodatage Unix: Convertissez entre horodatages Unix et dates
  • Calculateur de Chevauchement de Fuseau Horaire: Trouvez le chevauchement des heures de travail entre fuseaux horaires
  • Formateur JSON: Formatez et validez les données JSON

Exemple

L'expression « 0 9 * * 1-5 » se décompose ainsi : minute=0, heure=9, chaque jour du mois, chaque mois, lundi à vendredi — ce qui signifie « À 9 h 00, du lundi au vendredi ».

Interprétation de vos résultats

L'analyseur décompose une expression cron à 5 champs en ses composants individuels et traduit chacun en langage clair. Les cinq champs sont : minute (0–59), heure (0–23), jour du mois (1–31), mois (1–12) et jour de la semaine (0–6, où 0 est dimanche). Un job s'exécute lorsque les CINQ champs correspondent à l'heure actuelle — c'est la logique ET entre les champs. Faites attention particulièrement à l'interaction entre le jour du mois et le jour de la semaine, qui utilise la logique OU (pas ET). Un job planifié avec le jour 15 ET le jour de la semaine 5 s'exécutera le 15 de chaque mois ET chaque vendredi — pas seulement les vendredis qui tombent le jour 15. C'est une source fréquente de bugs de planification.

Questions fréquentes

Quels sont les 5 champs d'une expression cron ?
Dans l'ordre : minute (0-59), heure (0-23), jour du mois (1-31), mois (1-12) et jour de la semaine (0-6, où 0 est dimanche). Une tâche s'exécute lorsque les cinq champs correspondent à l'heure actuelle.
Que signifie un astérisque (*) dans la syntaxe cron ?
Un astérisque signifie « toute valeur est autorisée » pour ce champ. Par exemple, * dans le champ des heures signifie que la tâche peut s'exécuter à n'importe quelle heure — ce champ ne restreint donc pas le planning.
Que signifie */5 ?
La barre oblique indique une valeur de pas. */5 dans le champ des minutes signifie « toutes les 5 minutes » — en partant de la valeur minimale du champ et en se répétant toutes les 5 unités.
Comment planifier une tâche uniquement les jours de semaine ?
Utilisez une plage dans le champ jour de la semaine : 1-5 représente lundi à vendredi. Combiné à une heure et une minute précises, par exemple « 0 9 * * 1-5 » s'exécute à 9 h 00 chaque jour de semaine.
Que signifie la virgule dans la syntaxe cron ?
Une virgule sépare plusieurs valeurs dans un seul champ. Par exemple, 0,15,30,45 dans le champ minute signifie que la tâche s'exécute aux minutes 0, 15, 30 et 45. La virgule est un simple OU : la tâche s'exécute à l'une des valeurs listées.
Qu'est-ce que le trait d'union (plage) dans la syntaxe cron ?
Un trait d'union définit une plage de valeurs. Par exemple, 1-5 dans le champ jour de la semaine signifie du lundi au vendredi (jours 1 à 5). Les plages sont inclusives des deux extrémités. Vous pouvez combiner des plages avec d'autres syntaxes : 1-5,0 signifie du lundi au vendredi plus dimanche.
Comment planifier une tâche pour qu'elle s'exécute toutes les 2 semaines ?
Le cron standard ne prend pas en charge la planification bimensuelle de manière native. Vous avez deux options : (1) Utilisez un script d'assistance qui vérifie la date et ne s'exécute que toutes les deux semaines, ou (2) Utilisez un planificateur de tâches qui prend en charge des expressions plus complexes comme AWS EventBridge ou les minuteries système avec déclencheurs basés sur le calendrier.
Quel fuseau horaire utilise cron ?
Le cron standard utilise le fuseau horaire local du serveur. Si votre serveur est configuré pour UTC, tous les jobs cron s'exécutent en UTC quel que soit votre fuseau horaire local. Vérifiez toujours le paramètre de fuseau horaire du serveur, en particulier dans les environnements cloud où le fuseau horaire par défaut peut ne pas correspondre à votre fuseau horaire attendu.
Quelle est la différence entre cron et crontab ?
Cron est le démon (service en arrière-plan) qui exécute les tâches planifiées. Crontab est le fichier de configuration (ou commande) qui définit la liste des jobs cron. Lorsque vous éditez votre crontab, vous écrivez les définitions de planification que le démon cron lit et exécute.
Comment gérer l'heure d'été avec cron ?
La plupart des implémentations de cron ne s'ajustent pas automatiquement à l'heure d'été. Quand les horloges avancent, un job planifié pour 2h00 peut être complètement ignoré. Quand les horloges reculent, un job peut s'exécuter deux fois. Pour éviter les problèmes, planifiez les jobs en dehors des heures de transition (2h00–3h00) ou utilisez une planification basée sur UTC.
Puis-je utiliser cron pour des intervalles inférieures à une minute ?
Le cron standard a une granularité au niveau de la minute et ne peut pas planifier des tâches plus fréquemment qu'une fois par minute. Pour des intervalles inférieures à une minute, utilisez des alternatives comme les minuteries systemd, les CronJobs Kubernetes avec des intervalles plus courts ou les planificateurs au niveau de l'application (node-cron avec support des millisecondes).

Découvrez plus d'outils

Une sélection fraîche de toute notre bibliothèque d'outils.