Recherche de site Web

Test et débogage des tâches Cron sous Linux


Introduction

Tout d’abord, nous devons comprendre ce qu’est Cron Job sous Linux. Le travail Cron est également une commande Linux utilisée pour planifier tout type de travail à l'avenir. Par conséquent, cela peut servir à de nombreux objectifs de l'utilisateur, comme si certaines commandes spécifiques devaient être exécutées après le redémarrage du système ou à un moment précis de la journée.

Il existe désormais de nombreux défis liés aux tests et au débogage des tâches cron. Comprenons-les en détail dans cet article.

Syntaxe

Si nous voulons mettre en place une tâche cron, nous devons alors comprendre la syntaxe de la tâche cron.

“a b c d e” “command script path” output

Comprenons maintenant chaque partie de la syntaxe.

  • a b c d e - Ceci indique les données/l'heure.

Voyons maintenant en détail tous les éléments temporels.

  • [a] indique Minute et les valeurs possibles vont de 0 à 59.

Example if a = 8

La tâche cron est exécutée lorsque les minutes de l'horloge système sont en position 8.

  • [b] indique l'heure et les valeurs possibles sont comprises entre 0 et 23. Notez qu'ici le format de l'heure est 24 heures et non 12 heures. Cela signifie que 20 heures est affiché comme 20.

Example if b = 8 

La tâche cron est exécutée lorsque l'heure de l'horloge système est en position 8.

  • [c] indique le jour et les valeurs possibles vont de 0 à 31.

Example if c = 8 

La tâche cron est exécutée tous les 8 jours du mois.

  • [d] indique le mois où 0 signifie aucun et 12 signifie décembre.

Example if d = 8 

La tâche cron est exécutée tous les 8 mois, soit en août.

  • [e] indique le jour de la semaine où 0 signifie dimanche et 7 signifie dimanche.

Example if e = 1

La tâche cron est exécutée tous les 1er jours, soit le lundi.

  • chemin du script de commande - Ceci indique le chemin et le script que nous voulons exécuter.

    Par exemple, nous pouvons exécuter « /root/diskspace.sh » ou n’importe quelle commande directe.

  • sortie - Ceci n'est pas obligatoire. Il informe l'utilisateur de la fin du travail.

Configurer une tâche Cron

La façon la plus simple de créer une tâche de maïs consiste à utiliser la commande ci-dessous.

$ crontab –e

Si nous exécutons cette commande pour la première fois, nous obtiendrons la sortie ci-dessous pour choisir l'éditeur.

no crontab for rian - using an empty one

Select an editor.  To change later, run 'select-editor'.
   1. /bin/ed
   2. /bin/nano        <---- easiest
   3. /usr/bin/vim.basic
   4. /usr/bin/vim.tiny

Choose 1-4 [2]: 4

Si nous sommes à l’aise avec vim, choisissons « 4 » et appuyons sur Entrée.

Le fichier ci-dessous sera maintenant ouvert. Ici, nous pouvons enfin ajouter nos commandes. Par exemple ,

« 48 23 * * * df > /tmp/cron.log 2>&1 ». Cela signifie que nous exécutons la commande df à 23 heures 48 minutes et que la sortie sera stockée dans le fichier /tmp/cron.log.

….many lines…
# 0 5 * * 1 tar -zcf /var/backups/home.tgz /home/
#
# For more information see the manual pages of crontab(5) and cron(8)
#
# m h  dom mon dow   command

48 23 * * * df > /tmp/cron.log 2>&1

Nous pouvons voir ci-dessus que le texte contient déjà le format ou la syntaxe de l'onglet cron

# m h  dom mon dow   command

Si nous saisissons une syntaxe incorrecte, nous pouvons obtenir le message ci-dessous. Nous pouvons réessayer.

crontab: installing new crontab
"/tmp/crontab.4837sP/crontab":23: bad day-of-month
errors in crontab file, can't install.
Do you want to retry the same edit? (y/n) y

S'il n'y a pas d'erreur, nous obtenons le message ci-dessous.

crontab: installing new crontab

Répertoriez tous les travaux Cron

Nous pouvons utiliser la commande ci-dessous pour répertorier toutes les tâches cron présentes pour l'utilisateur actuel.

Commande

$ crontab -l

Sortir

……Many lines….
# m h  dom mon dow   command
48 23 * * * df > /tmp/cron.log 2>&1

Maintenant, lorsque notre tâche cron a été exécutée, nous pouvons voir le résultat dans « /tmp/cron.log ».

Commande

$ cat /tmp/cron.log

Sortir

Filesystem     1K-blocks    Used Available Use% Mounted on
udev              985120       0    985120   0% /dev
tmpfs             202976    6396    196580   4% /run
/dev/sda1      305480952 5688928 284251444   2% /
tmpfs            1014868     220   1014648   1% /dev/shm
tmpfs               5120       4      5116   1% /run/lock
tmpfs            1014868       0   1014868   0% /sys/fs/cgroup
tmpfs             202976      56    202920   1% /run/user/1000

Conclusion

À partir de cet article, nous avons eu une idée sur la façon de créer une tâche cron et de la tester. Désormais, en fonction de nos besoins, nous pouvons effectuer des tâches pour nous faciliter la vie avec les systèmes Linux.

Articles connexes: