Comment utiliser cet outil ?
- Choisissez la variante en haut : Unix pour les crontab classiques, Quartz pour les apps Java, AWS pour les règles EventBridge, Spring pour les annotations @Scheduled.
- Tapez une expression dans le champ ou cliquez sur un preset — l'explication en clair apparaît immédiatement.
- Définissez le fuseau horaire dans le sélecteur — les cinq prochaines exécutions sont calculées dans cette zone.
- Lisez le panneau d'indications — pour un passage à l'heure d'été, le piège OR (DoM + jour de semaine) ou une date impossible (31 février), un avertissement apparaît ici.
- Dans l'onglet Export, choisissez le format cible et remplissez le presse-papier — ligne crontab, GitHub Actions, CronJob Kubernetes ou AWS EventBridge.
Que fait le constructeur ?
Le constructeur d’expressions cron est un éditeur live pour les quatre dialectes cron dominants : Unix cron classique à cinq champs, Quartz à six ou sept champs, AWS EventBridge à forme fixe six champs et Spring @Scheduled avec la même forme six champs sans année. Quand vous tapez dans le champ, le constructeur traduit l’expression immédiatement en une phrase en clair en français, liste les cinq prochaines exécutions dans votre fuseau IANA et signale les passages à l’heure d’été, les combinaisons de dates impossibles et le piège OR quand jour du mois et jour de la semaine sont définis simultanément.
Pur client. Chaque expression reste dans votre navigateur. Pas de serveur, pas de tracking, pas de mur de cookies. L’outil fonctionne hors ligne dès que la page est chargée.
Pourquoi a-t-on besoin d’un outil pour cron ?
Cron paraît anodin — cinq étoiles suffisent à toucher chaque seconde. Mais dès que vous devenez plus spécifique, les détails mordent. 0 0 31 2 * se parse proprement comme chaque 31 février à minuit, mais ne tourne jamais. 0 0 * * 0,1 semble ne tourner que dimanche et lundi — sur les timers systemd c’est exact, sur les implémentations Vixie-Cron classiques le système relie les deux champs jour par OU, et vous attrapez deux fois plus de jours que prévu. 0 2 * * * tourne 364 jours par an — et ce dimanche de mars où l’heure d’été commence, il ne tourne pas, parce que 02:00 n’existe simplement pas dans beaucoup de fuseaux européens. AWS EventBridge documente cela derrière un paragraphe qui commence par les mots intentionally-skipped.
Le constructeur attrape ces trois classes avec la même interface : explication en clair, liste Next-Run dans votre fuseau et un panneau d’indications qui nomme l’heure d’été, le piège OR et les dates impossibles dans un langage unifié.
Quatre dialectes dans un éditeur
Unix cron est la forme à cinq champs qui accompagne chaque distribution Linux. Quartz, le scheduler derrière Spring Batch et Quartz.NET, ajoute un champ secondes devant et optionnellement un champ année derrière. AWS EventBridge reprend la forme Quartz, mais décale le jour de la semaine de 0-6 à 1-7 et rend obligatoire le mutex point d’interrogation entre jour du mois et jour de la semaine. Spring @Scheduled est un clone Quartz sans année.
Le constructeur distingue les quatre dialectes via le sélecteur d’onglet en haut. Chaque clic sur un preset (Toutes les heures, Jours ouvrés 09:00, Week-end 10:00) tire automatiquement l’expression adaptée à la variante actuellement choisie. Un changement de variante traduit aussi le hit de preset, sans que vous deviez retaper l’expression.
Explication en clair — Voice-Search-First
La première ligne de l’explication répond directement à la question — par exemple : Chaque lundi à 09:00. Cette convention facilite Voice-Search et la citation par LLM : la phrase fonctionne comme mot-clé sans étapes de contexte supplémentaires. Les réponses Google Assistant et Perplexity lisent typiquement les dix premiers mots du premier paragraphe — l’explication est exactement formée pour cela.
Aperçu de fuseau horaire
La liste Next-Run calcule en arrière-plan via Intl.DateTimeFormat et une sonde minutée si la combinaison heure, minute et jour de semaine planifiée correspond au slot IANA cible. Huit fuseaux populaires sont préréglés — UTC, Europe/Paris, Europe/London, America/New_York et quatre autres. La base IANA des fuseaux horaires est la référence mondiale pour les données de fuseaux — navigateurs, serveurs et bibliothèques runtime l’utilisent.
Alerte heure d’été
Dès que le fuseau montre une heure de transition DST dans la fenêtre de prévision, le constructeur examine si l’heure cron est concernée. Si oui, une alerte jaune apparaît à côté de la liste Next-Run : Sauté le 2026-03-29 — l'horloge saute de 02:00 à 03:00 ou Exécuté deux fois le 2026-10-25 — l'heure se répète au retour en arrière. Ces phrases évitent l’erreur d’interprétation la plus fréquente pour les jobs de sauvegarde et de reporting.
Que vérifie la validation sémantique ?
Syntaxiquement valide ne veut pas dire sémantiquement sensé. Le constructeur distingue trois classes :
- Ne tournera jamais —
0 0 31 2 *se parse proprement, mais le 31 février n’existe pas. Le constructeur le reconnaît à partir de la table des longueurs de mois et signale l’alerte immédiatement. - Piège OR — Quand jour du mois et jour de la semaine sont tous deux définis, Vixie-Cron relie par OU, systemd et Spring par ET.
0 0 1 * MONtourne sur Vixie-Cron chaque 1er plus chaque lundi — sur systemd seulement le 1er si c’est un lundi. L’alerte nomme les deux attentes d’implémentation, pour que le réviseur ne s’étonne pas plus tard. - Erreur de variante — Qui tape des secondes dans un Unix cron ou pose le point d’interrogation dans un champ Unix obtient un message clair d’erreur de variante au lieu d’un échec de parse silencieux.
Quels exports sont intégrés ?
Quatre formats cibles sont prêts. Chacun livre exactement le bloc que vous pouvez copier dans votre YAML, manifeste ou crontab :
- crontab — une simple ligne cron plus en-tête de commentaire. Convient à
crontab -eou à un fichier/etc/cron.d. - GitHub Actions — bloc
on.schedulecomplet avecname,cronentre guillemets simples et un commentaire# Runs in UTCexplicite. Le commentaire évite la confusion GitHub Actions la plus fréquente (testé localement, planifié en UTC). - CronJob Kubernetes — manifeste complet avec
apiVersion: batch/v1,kind: CronJob, nom DNS-1123 nettoyé et container d’exemple busybox. Vous ne remplacez queimageetcommand. - AWS EventBridge — wrap compact
cron(...). La console AWS accepte exactement cette forme.
Qu’est-ce qui n’est délibérément pas construit ?
Le constructeur est builder-only : il planifie, valide et exporte. Monitoring, alerting, historique et appel de jobs cron n’y appartiennent pas. Sept fonctions sont délibérément absentes :
- Pas de monitoring ni de dead man’s switch — pour cela il y a Cronitor et services équivalents.
- Pas de stockage d’historique au-delà de la session courante — le hard-cap « pas de localStorage » vaut ici aussi.
- Pas de simulation au-delà de quatre ans —
0 0 29 2 *figerait sinon l’aperçu. - Pas de dialectes vendor (Jenkins H-Hash, Nomad-spécifique, extensions Camel-Quartz).
- Pas de traduction NLP texte-vers-cron — cela appartient aux outils LLM et brise la promesse pur-client.
Comment la confidentialité est-elle gérée ?
Le constructeur tourne entièrement dans votre navigateur. Il n’y a pas d’appel serveur, pas d’endpoint de télémétrie, pas de bandeau cookie. Les seules API hôtes utilisées par le constructeur sont new Date() pour l’ancre temporelle de la prévision Next-Run et Intl.DateTimeFormat pour la conversion de fuseau IANA. Les deux sont des standards web depuis des années, sans implication de tracking.
Thèmes liés
- Cron sur Wikipédia — histoire, Vixie-Cron, timers systemd
- Base IANA des fuseaux horaires — source des données de transition DST
- Manuel GNU mcron — extensions au-delà de Vixie-Cron, lecture optionnelle pour des patterns scheduler custom
Dernière mise à jour :