Cron est un démon de planification de tâches basé sur le temps dans les systèmes d'exploitation basés sur Linux. Il est utilisé pour planifier des tâches spécifiques à exécuter périodiquement à des heures, des dates ou des intervalles fixes. Il est très similaire à l'utilitaire de planification de tâches de Windows et est très utile pour les tâches de routine, notamment :
- Sauvegardes quotidiennes
- Analyse du système
- Maintenance automatisée du système
Le démon cron s'exécute en arrière-plan et vérifie en permanence le fichier /etc/crontab et les répertoires /etc/cron.*/.
Syntaxe Crontab
La syntaxe de base du fichier crontab est illustrée ci-dessous :
M H DOM MON DOW USER COMMAND * * * * * root command(s) - - - - - | | | | | | | | | ----- Day of week (0 - 7) (Sunday=0 or 7) | | | ------- Month (1 - 12) | | --------- Day of month (1 - 31) | ----------- Hour (0 - 23) ------------- Minute (0 - 59)
- Minutes (M) spécifié sous la forme d'un nombre de 0 à 59.
- Heures (H) spécifié sous forme de nombres de 0 à 23.
- Jours du mois (DOM) spécifié sous forme de nombres de 1 à 31.
- Mois (LUN) spécifié sous forme de nombres de 1 à 12.
- Jours de la semaine (DOW) spécifié sous forme de nombres de 0 à 7, le dimanche étant représenté soit/à la fois par 0 et 7.
Commandes Crontab
Certaines commandes crontab couramment utilisées sont présentées ci-dessous :
- crontab -e :utilisé pour modifier ou créer un nouveau fichier crontab.
- crontab -l :Utilisé pour afficher le contenu du fichier crontab.
- crontab -i :utilisé pour supprimer le fichier crontab actuel avec une invite avant la suppression.
- crontab -r :utilisé pour supprimer le fichier crontab actuel sans invite.
- crontab -u :utilisé pour modifier le fichier crontab d'un autre utilisateur.
1. Planifiez un cron à exécuter à 10h00 Tâche quotidienne
Si vous souhaitez qu'un script nommé /opt/test.sh s'exécute tous les jours à 10h00, exécutez la commande suivante :
crontab -e
Ajoutez la ligne suivante :
0 10 * * * /bin/sh /opt/test.sh
2. Programmez un cron à exécuter toutes les 5 minutes
Pour exécuter un script test.sh toutes les 5 minutes, rediriger la sortie standard vers /dev/null et envoyer les erreurs à une adresse e-mail spécifiée, exécutez la commande suivante :
crontab -e
Ajoutez la ligne suivante :
[email protected] */5 * * * * /bin/sh /opt/test.sh > /dev/null
3. Programmez un cron à exécuter tous les jours, toutes les heures, toutes les heures de 10h à 18h
Pour exécuter un script test.sh tous les jours, toutes les heures, de 10 h 00 à 18 h 00, exécutez la commande suivante :
crontab -e
Ajoutez la ligne suivante :
00 10-18 * * * /bin/sh /opt/test.sh
4. Programmez un cron pour qu'il s'exécute à 10 h 00 le premier de chaque mois
Pour exécuter un script test.sh à 10 h 00 le premier de chaque mois, exécutez la commande suivante :
crontab -e
Ajoutez la ligne suivante :
00 10 1 * * /bin/sh /opt/test.sh
5. Programmez un cron pour qu'il s'exécute 10 minutes après minuit et toutes les trois heures ensuite, tous les jours
Pour exécuter un script test.sh à 10 minutes après minuit, puis toutes les 3 heures, tous les jours, exécutez la commande suivante :
crontab -e
Ajoutez la ligne suivante :
10 0-23/3 * * * /bin/sh /opt/test.sh
6. Programmez un cron pour qu'il s'exécute certains jours
Pour exécuter un script test.sh chaque lundi et vendredi à 18 h 00, exécutez la commande suivante :
crontab -e
Ajoutez la ligne suivante :
0 18 * * mon,fri /bin/sh /opt/test.sh
7. Planifiez un cron pour exécuter plusieurs scripts
Pour exécuter un script test.sh et test1.sh à intervalle de 2 heures, exécutez la commande suivante :
crontab -e
Ajoutez la ligne suivante :
0 */2 * * * /bin/sh /opt/test.sh; /bin/sh /opt/test1.sh
8. Planifiez un cron à exécuter chaque semaine, mois ou année
Pour exécuter un test.sh chaque semaine, ajoutez la ligne suivante :
@weekly /bin/sh /opt/test.sh
Pour exécuter un test.sh tous les mois, ajoutez la ligne suivante :
@monthly /bin/sh /opt/test.sh
Pour exécuter un test.sh chaque année, ajoutez la ligne suivante :
@yearly /bin/sh /opt/test.sh
Conclusion
Dans le guide ci-dessus, vous avez appris ce qu'est cron et comment l'utiliser, avec plusieurs exemples. Commencez à utiliser les tâches cron pour automatiser les tâches quotidiennes dès aujourd'hui avec l'hébergement VPS d'Atlantic.Net !