Introduction
cron est un programme qui permet aux utilisateurs des systèmes Unix d’exécuter automatiquement des scripts, des commandes ou des logiciels à une date et une heure spécifiées à l’avance, ou selon un cycle défini à l’avance.
Afficher la crontab
La commande suivante affiche la crontab de l'utilisateur courant :
crontab -l
Il est aussi d'afficher les crontabs de tous les utilisateurs avec la commande suivante :
sudo getent passwd | cut -d: -f1 | perl -e'while(<>){chomp;$l = `crontab -u $_ -l 2>/dev/null`;print "$_\n$l\n" if $l}'
Éditer la crontab
La façon la plus simple de créer un fichier crontab consiste à utiliser la commande crontab -e. Cette commande ouvre l'éditeur de texte qui a été défini pour votre environnement système. L'éditeur par défaut de votre environnement système est défini dans la variable d'environnement EDITOR.
La commande suivante permet de modifier la table cron pour l'utilisateur courant :
crontab -e
Chaque ligne dans la crontab représente une tâche et ressemble à ceci :
# ┌───────────── minute (0 - 59)
# │ ┌───────────── heure (0 - 23)
# │ │ ┌───────────── jour du mois (1 - 31)
# │ │ │ ┌───────────── mois (1 - 12)
# │ │ │ │ ┌───────────── jour de la semaine (0 - 6) (Dimanche à samedi;
# │ │ │ │ │ 7 est aussi le dimanche dans certains systèmes)
# │ │ │ │ │
# │ │ │ │ │
# * * * * * commande à exécuter
# Exemple d'appel à une URL à tous les 15 minutes
*/15 * * * * /usr/bin/curl https://www.webo3.ca
Supprimer la crontab
La ligne de commande suivante supprime le contenu, sans confirmation, de la crontab pour l'utilisateur courant :
crontab -r
Modifier l'éditeur par défaut
Afin de changer l'éditeur par défaut vous pouvez exécuter la commande :
export EDITOR=nano
Il est aussi possible de rendre cette modification permanente en modifiant le fichier ~/.bash_profile
Pour plus d'informations sur la syntaxe des crontab, regardez : https://fr.wikipedia.org/wiki/Cron