Explication des expressions cron
Saisissez une ligne de crontab pour voir ce que signifie chaque champ et quand la tâche s'exécutera les 10 prochaines fois, à votre heure locale.
Qu'est-ce que cron ?
cron est le planificateur de tâches de Linux et Unix : il exécute automatiquement des commandes aux dates et heures indiquées. Chaque utilisateur a sa crontab (modifiable avec crontab -e), dont chaque ligne contient une expression de cinq champs suivie de la commande, par exemple 0 3 * * * /home/utilisateur/sauvegarde.sh pour faire une sauvegarde chaque jour à 3 h.
La même syntaxe est utilisée par de nombreux autres outils : tâches planifiées de Plesk et cPanel, GitHub Actions, CronJob de Kubernetes ou les planificateurs de Laravel et Symfony.
Syntaxe des champs
Les champs sont, dans l'ordre : minute (0-59), heure (0-23), jour du mois (1-31), mois (1-12 ou jan-dec) et jour de la semaine (0-7 ou sun-sat ; 0 et 7 sont le dimanche). Un * signifie « n'importe lequel », 1,15 est une liste, 1-5 une plage et */10 « tous les 10 ». Par exemple, 30 8 * * 1-5 signifie « à 8 h 30 du lundi au vendredi ».
Attention : si le jour du mois et le jour de la semaine sont restreints tous les deux, cron exécute la tâche lorsque l'un ou l'autre correspond, pas les deux.
Raccourcis @
@hourly (toutes les heures), @daily ou @midnight (chaque jour à 0 h), @weekly (le dimanche à 0 h), @monthly (le 1er de chaque mois), @yearly ou @annually (le 1er janvier) et @reboot (au démarrage du système).