Cron une fois par mois
C’est 0 0 1 * * — le 1er, à minuit.
Les exemples remplacent temporairement la saisie et les réglages. Vous pouvez rétablir votre travail précédent.
- cron
- • • • • •
• • • • •
•••••••••• •••••• ••••••
• •••••••• ••••• ••••••
• • •••••• •••• •• •••• ••••••
• • • •••• •••• ••••••
• • • • •• •••• •• •• ••••••• ••••• •••••••• •••• •• •• • ••• •• ••••••• ••• •••••••••
• • • • •
••••••••• • •
•••••• •
••••• •
•••• •• •••• •
•••• ••••
•••• •• •• ••••••• ••••
•••• •••••••••• •••••••••• •••••• •• •••••••••••••• •
•••••••••• ••••• ••••
•••••••••• ••••• ••••
•••••••••• ••••• ••••
•••••••••• ••••• ••••
•••••••••• ••••• ••••Vos fichiers restent sur votre appareil
Cet outil fonctionne entièrement dans votre navigateur. Ce que vous collez est traité sur votre appareil et n’est jamais envoyé à un serveur : vous pouvez l’utiliser sans crainte avec des jetons, des clés et des textes non publiés.
Exemple
Exemple : l’export des factures le 5 de chaque mois à 8 h 15
Le préréglage donne 0 0 1 * *, minuit le 1er. Mais un cabinet comptable veut son export le 5, quand les factures du mois précédent sont toutes saisies. Remettez le menu sur « Décrire ci-dessous à la place » et tapez, en anglais : at 8:15 on the 5th of every month.
- Le constructeur écrit 15 8 5 * * : minute 15, heure 8, jour du mois 5, tous les mois, n’importe quel jour de la semaine.
- En dessous, la relecture reprend chaque champ et liste les cinq prochaines exécutions, chacune un 5 à 08:15, à l’heure de votre navigateur.
- Collez la ligne dans la crontab, devant la commande : 15 8 5 * * /home/compta/export-factures.sh
| Tapé ou choisi | Expression | Exécutions |
|---|---|---|
| Préréglage « Le 1er de chaque mois » | 0 0 1 * * | le 1er à 00:00, 12 fois par an |
| at 8:15 on the 5th of every month | 15 8 5 * * | le 5 à 08:15, 12 fois par an |
| on the 1st and 15th at 9am | 0 9 1,15 * * | le 1er et le 15 à 09:00, 24 fois par an |
| at 6:00 on the 1st of january, april, july and october | 0 6 1 1,4,7,10 * | chaque trimestre, 4 fois par an |
| on the 31st at 23:00 | 0 23 31 * * | 7 fois par an seulement |
| on the last day of the month | refusé | message : cron ne sait pas dire « le dernier jour du mois » |
15 8 5 * * : douze exécutions par an, chaque 5 du mois à 08:15, à l’heure de la machine qui exécute la tâche. Changez les deux premiers nombres pour l’heure, le troisième pour le jour ; tant que ce jour est 28 ou moins, il existe dans tous les mois.
Comment ça marche
- L’expression est déjà là : 0 0 1 * *. Les cinq champs en dessous sont la minute, l’heure, le jour du mois, le mois et le jour de la semaine, dans cet ordre.
- Copiez-la dans votre crontab, votre planification CI ou votre ordonnanceur cloud. Les mêmes cinq champs y signifient la même chose.
- Pour la modifier, remettez le menu sur « Décrire ci-dessous à la place » et décrivez la planification en anglais — « every 2 hours », « at 5pm on weekdays ». Le champ ne lit pas les phrases en français ; la relecture, elle, s’affiche en français.
- Vérifiez la relecture, pas l’expression. Ce qui s’affiche dessous vient de l’analyse de ce qui a été construit : c’est ce qu’une machine en ferait, pas ce que nous voulions dire.
Questions fréquentes
- Puis-je viser le dernier jour du mois ?
- Pas en cron classique. Le 31 ne se produit tout simplement pas dans les mois qui n’ont pas de 31 : la tâche saute février, avril, juin, septembre et novembre, sans que personne le remarque. Pour la fin de mois, planifiez le 1er du mois suivant, ou lancez la tâche chaque jour et vérifiez dans le script si demain change de mois.
- Est-ce que cela marche dans GitHub Actions, Kubernetes et les ordonnanceurs cloud ?
- Les cinq champs, oui. Ce qui change, c’est tout le reste : certains acceptent des noms comme @daily, les CronJobs Kubernetes prennent les mêmes cinq champs, et GitHub Actions lance les exécutions planifiées en retard quand la charge est forte. Collez l’expression et vérifiez là où elle tournera.
- Puis-je faire lire une expression que j’ai déjà ?
- Oui, c’est l’analyseur cron : collez l’expression, vous obtenez l’explication et les prochaines exécutions. C’est le même analyseur qui relit ici ce qui vient d’être construit.
- Mon serveur est réglé en UTC : à quelle heure la tâche tourne-t-elle en France ?
- Cron lit l’horloge de la machine qui l’exécute. Sur un serveur en UTC, 15 8 5 * * part à 9 h 15 à Paris en hiver (UTC+1) et à 10 h 15 en été (UTC+2). Les prochaines exécutions affichées ici sont calculées à l’heure de votre navigateur : vérifiez le fuseau du serveur avant de choisir l’heure.
- Comment lancer une tâche une fois par trimestre ?
- En listant les mois dans le quatrième champ : tapez « at 6:00 on the 1st of january, april, july and october » et vous obtenez 0 6 1 1,4,7,10 *, le 1er janvier, avril, juillet et octobre à 6 h. Le même principe donne deux fois par mois : « on the 1st and 15th at 9am » devient 0 9 1,15 * *.
- Quelque chose est-il envoyé ?
- Non. La construction et la lecture se font dans cette page. Une planification dit quand vos systèmes font quelque chose ; aucun serveur étranger n’a besoin de le savoir.