Ce que fait cet outil
Décode une expression cron en français lisible, liste les 5 prochaines occurrences et détaille chaque champ (minute, heure, jour-du-mois, mois, jour-de-la-semaine) pour que tu puisses vérifier ton schedule avant de le déployer. Supporte les pas (*/15), les plages (1-5), les listes (1,15,30), les noms (MON, JAN) et les alias courants (@hourly, @daily, @weekly, @monthly, @yearly).
Quand l'utiliser
- Confirmer que « tous les mardis à 3h » est bien
0 3 * * 2et pas0 3 * * TUE(c'est les deux). - Voir quand la prochaine exécution se déclenchera après un déploiement.
- Vérifier un schedule tiré d'un manifest Kubernetes
CronJob. - Traduire mentalement entre la syntaxe AWS EventBridge et le cron standard.
Comment ça marche
Le parser gère le cron 5-champs standard — minute, heure, jour-du-mois, mois, jour-de-la-semaine — plus les alias nommés. Il ne gère pas le dialecte Quartz à 6 champs (qui ajoute un champ secondes) ni la forme AWS à 7 champs (qui ajoute un champ année), parce que ce sont des specs différentes.
Le calcul de prochaine exécution avance minute par minute, vérifiant chaque champ. C'est lent au pire (un schedule qui se déclenche une fois par an prend ~525 600 itérations) mais jamais perceptible pour une lecture humaine.
Notes
Jour-du-mois et jour-de-la-semaine sont OR'és, pas AND'és. 0 0 1 * MON ne veut pas dire « le premier du mois si c'est un lundi » — ça veut dire « le premier du mois, ou n'importe quel lundi ». C'est le comportement historique du cron de Vixie et ça piège quasiment tout le monde.
Dimanche c'est 0 ou 7 ? Les deux. La plupart des implémentations cron acceptent l'un ou l'autre. SUN marche aussi.
@reboot est-il supporté ? Non — c'est une directive cron-système-uniquement sans signification d'horloge murale, et on ne peut pas le prévisualiser.
Outils liés
- Convertisseur timestamp — vérifie les prochaines exécutions dans ton fuseau
- Testeur de regex — pour matcher des strings cron par programme