Comprendre les expressions cron : rédiger des plannings comme un développeur
Les expressions Cron contrôlent le moment où les tâches automatisées s'exécutent sur les serveurs, les plates-formes cloud et les outils de planification. Pourtant, la plupart des développeurs ont recours à la copie d'exemples et espèrent qu'ils fonctionnent. Comprendre la syntaxe cron signifie que vous pouvez écrire en toute confiance n'importe quelle planification à partir de zéro, déboguer plus rapidement les tâches défaillantes et éviter des erreurs coûteuses telles que des sauvegardes qui ne s'exécutent jamais.
Que sont les expressions cron et pourquoi elles sont importantes
Une expression cron est une chaîne compacte de cinq ou six champs qui indique à un système exactement quand exécuter une tâche. Il s'agit du format standard sur les serveurs Unix, Linux, GitHub Actions, AWS EventBridge, Kubernetes et les plateformes CI/CD dans le monde entier. Au lieu d'écrire une prose comme "faites ça tous les mardis à 2 heures du matin", vous écrivez 0 2 * * 2, et le démon cron l'interprète instantanément. L'apprentissage de cette notation, qui est restée pratiquement inchangée depuis des décennies, est un investissement ponctuel qui s'avère rentable à chaque fois que vous planifiez quelque chose.
Les cinq champs et leurs plages
Le cron standard utilise cinq champs obligatoires séparés par des espaces. Lisez-les de gauche à droite comme minute, heure, jour du mois, mois et jour de la semaine :
Minute(0–59) — quelle minute de l'heure exécuterHour(0-23) — quelle heure de la journée (horloge de 24 heures)Day of month(1-31) — quel jour civilMonth(1-12) — quel mois de l'annéeDay of week(0–7) – quel jour de la semaine, où 0 et 7 signifient dimanche
Chaque champ accepte une valeur spécifique, une plage comme 1-5, une liste comme 1,3,5, ou un caractère générique * ce qui signifie « chaque valeur dans ce champ ». L'opérateur slash divise les plages : */15 dans le champ des minutes signifie toutes les 15 minutes.
Modèles courants que vous écrirez
La plupart des programmes du monde réel se répètent de plusieurs manières. Les matins de semaine à 9 heures du matin sont 0 9 * * 1-5. Chaque heure est 0 * * * *. Premier jour du mois à minuit : 0 0 1 * *. Toutes les 15 minutes, toute la journée : */15 * * * *. Une fois par jour le dimanche à 2h30 : 30 2 * * 0. Si jamais vous n'êtes pas sûr que votre expression soit correcte, collez-la dans un analyseur cron pour voir les cinq prochaines exécutions planifiées et vérifier qu'elles correspondent à votre intention avant le déploiement.
Créez votre propre expression cron
Commencez en anglais, puis traduisez en cron. Vous voulez « 9h30 tous les jours de la semaine » ? Cela représente 30 minutes, 9 heures, n'importe quel jour du mois, n'importe quel mois, du lundi au vendredi. Les champs deviennent 30 9 * * 1-5. Pour "deux fois par jour à 7h et 18h" : 0 7,18 * * * (une virgule sépare les heures). Le 15 à midi de chaque mois : 0 12 15 * *. Une fois que vous avez écrit une expression, testez-la toujours avec l'analyseur pour détecter les fautes de frappe avant de la déployer.
Gérez les fuseaux horaires et vérifiez les heures exactes
Les expressions Cron sont relatives au serveur : elles s'exécutent dans le fuseau horaire du système, et non dans votre fuseau horaire local. Pour vérifier un horodatage Unix ou voir à quelle heure locale votre cron se déclenche dans votre zone, utilisez le convertisseur d'horodatage, qui s'exécute dans votre navigateur et gère instantanément les conversions de fuseau horaire sans envoyer de données nulle part.
Transformez votre emploi du temps en événement de calendrier
Une fois que vous avez une expression cron solide, partagez-la ou ajoutez-la à votre calendrier pour voir quand la tâche s'exécute. Le Générateur ICS convertit une date de début et une règle de récurrence en un fichier de calendrier qui s'importe dans Apple Calendar, Google Calendar, Outlook ou toute autre application de calendrier standard. Vous pouvez également créer un direct Lien Google Agenda qui ouvre l'événement pré-rempli dans Google Agenda en un seul clic : pas de téléchargement, pas de gestion de fichiers.
Vos plannings cron restent privés
Tous les outils mentionnés ici s'exécutent dans votre navigateur ; rien n'est téléchargé sur un serveur. L'analyse Cron, la conversion d'horodatage, la génération de calendrier et la création de liens se déroulent sur votre appareil. Pas de compte, pas de suivi et les outils fonctionnent hors ligne après leur chargement. Vos horaires et détails d’automatisation restent les vôtres.