Comment créer et ajouter des tâches Cron sous Linux

Planification de tâches périodiques à l'aide de Cron sous Linux

cron est un programme Linux utilisé pour planifier une commande ou un script à exécuter à un moment ultérieur. Il peut également être utilisé pour planifier l'exécution périodique de commandes et de scripts. Les programmes planifiés à l'aide de cron sont communément appelés Cron Jobs. Son utilisation principale est pour les tâches d'administration système telles que les sauvegardes régulières, les mises à jour logicielles régulières et d'autres tâches de maintenance similaires.

introduction

cron fonctionne comme un démon sous Linux, c'est-à-dire comme un processus d'arrière-plan. Il permet aux utilisateurs de planifier des tâches directement avec la commande crontab, qui ouvre un fichier de configuration appelé Cron File dans un éditeur. Des fichiers Cron distincts sont créés pour chaque utilisateur.

Création d'un fichier Cron et syntaxe de base

le crontab la commande peut être exécutée avec -e flag pour modifier un fichier Cron existant. Si le fichier n'existe pas déjà, il sera créé. Si l'utilisateur appelle la commande pour la première fois et s'il existe plusieurs éditeurs de fichiers installés sur le système Linux, la commande demandera à l'utilisateur de choisir un éditeur par défaut dans une liste d'éditeurs.

Après avoir choisi l'éditeur, un fichier cron pour l'utilisateur sera créé et ouvert. Vous pouvez maintenant spécifier des tâches dans le fichier.

La syntaxe générale pour spécifier une tâche Cron est :

Fondamentalement, le fonctionnera à la "minute" (0-59), "heure" (0-23), "jour du mois" (1-31), mois (1-12), jour de la semaine, (0-7, Pour le dimanche, 0 ou 7 peuvent être utilisés) dans le travail Cron. Pour simplifier, prenons un exemple :

1 2 3 4 5 echo "Bonjour"

Cela signifie que la commande écho "Bonjour" fonctionnera tous les cinq jours de la semaine (vendredi) et tous les trois jours du mois, tous les quatre mois de l'année (avril), à 02:01 (2e heure première minute).

Si la même commande doit être exécutée tous les jours à 02:01, la syntaxe ressemblera à :

1 2 * * * echo "Bonjour"

le * signifie « toujours » ou « pour tous », par exemple. pour tous les mois, pour tous les jours de la semaine, etc.

L'opérateur de commande (,) peut être utilisé pour saisir une liste de valeurs lorsque la tâche doit être répétée. Par example:

0 2,3,4 * * * echo "Bonjour"

Celui-ci exécutera le programme à 2h, 3h et 4h du matin, tous les jours.

De la même manière, un trait d'union (-) opérateur peut être utilisé pour spécifier une plage pour laquelle la tâche doit se répéter. Par example:

0-20 2 * * * echo "Bonjour"

Cela exécutera le programme à 02:00, 02:01, 02:02, et ainsi de suite jusqu'à 02:20.

Enfin, nous avons la barre oblique ( / ) opérateur. Cet opérateur permet de spécifier une valeur d'intervalle selon laquelle la tâche sera répétée. Par exemple. */15 dans le champ des minutes signifie que la tâche doit être répétée toutes les 15 minutes. 2-10/2 dans le champ des heures spécifie que la tâche doit se répéter entre 2h00 et 10h00 après chaque intervalle de 2 heures (2h00, 4h00, 6h00, 8h00, 10h00).

*/15 2-10/2 * * * echo "Bonjour"

Après avoir effectué l'entrée dans le fichier Cron, enregistrez le fichier et quittez l'éditeur.

Vous devriez voir un « installer une nouvelle crontab » message dans le terminal après avoir enregistré et quitté le fichier crontab.

Macro

Certaines macros sont prédéfinies dans Cron qui spécifient des intervalles de temps couramment requis, tels que chaque heure, chaque jour, chaque mois, etc.

Pour exécuter une tâche une fois par jour au début de la journée, c'est-à-dire à 00h00, utilisez la macro @du quotidien. Ceci équivaut à 0 0 * * *.

Vous pouvez le mettre dans le fichier Cron de la même manière que décrit précédemment.

De la même manière, les autres macros peuvent être utilisées, à savoir. @ toutes les heures (Minute 0 de chaque heure), @mensuel (00:00 du premier jour du mois), @hebdomadaire (00:00 du premier jour de la semaine, @annuel(00:00 du premier janvier de chaque année), @redémarrer (à chaque démarrage de l'ordinateur).

Conclusion

Dans cet article, nous avons appris comment ajouter des tâches Cron pour une exécution régulière sous Linux. L'utilisation appropriée de Cron Jobs est pratique même pour les tâches manuelles les plus fastidieuses auxquelles l'utilisateur est confronté, par exemple. suppression régulière des anciens journaux, archivage de toutes sortes de données froides (données rarement consultées), etc.