=== Visualisation === Afin d'afficher le contenu de la table cron (pour l'utilisateur courant), il suffit d'exécuter la commande suivante : crontab -l Cette commande ne permet pas d'afficher la crontab centralisée (/etc/crontab). === Modification === Afin d'éditer la table cron (pour l'utilisateur courant), il suffit d'exécuter la commande suivante : crontab -e Cette commande a pour effet de lancer l'éditeur par défaut (en général [[vi|vi]]) présentant la table actuelle (donc aucune s'il s'agit du premier lancement de crontab). Cette commande ne permet pas de modifier la crontab centralisée (/etc/crontab). Chaque entrée de la table (chaque ligne) correspond à une tâche à exécuter et est notée de la façon suivante : mm hh jj MMM JJJ tâche > log Dans cette syntaxe: * mm représente les minutes (de 0 à 59) * hh représente l'heure (de 0 à 23) * jj représente le numéro du jour du mois (de 1 à 31) * MMM représente le numéro du mois (de 1 à 12) ou l'abréviation du nom du mois (jan, feb, mar, apr, ...) * JJJ représente l'abréviation du nom du jour ou le chiffre correspondant au jour de la semaine (0 représente le dimanche, 1 représente le lundi, ...) * tâche représente la commande ou le script shell à exécuter * log représente le nom d'un fichier dans lequel stocker le journal des opérations. Si la clause> log n'est pas spécifiée, cron enverra automatiquement un courriel de confirmation. Pour éviter cela il suffit de spécifier > /dev/null Pour chaque unité de temps (minute/heure/...) les notations sont possibles: * * : a chaque unité de temps * 2-5 : les unités de temps (2,3,4,5) * */3 : toutes les 3 unités de temps (0,3,6,...) * 5,8 : les unités de temps 5 et 8 Si sur la même ligne on trouve précisées une unité de temps "numéro du jour du mois" et une unité de temps "jour de la semaine", celles-ci sont considérées par crontab comme cumulatives. === Exemples === Imaginons que l'on veuille faire un journal (dans le fichier /tmp/log_df.txt par exemple) automatisé de l'espace disque libre (commande df[1]) à des intervalles de temps précis: * Tous les jours à 23h30: ''30 23 * * * df >>/tmp/log_df.txt'' * Toutes les heures, passées de 5 minutes : ''5 * * * * df >>/tmp/log_df.txt'' * Tous les premiers du mois à 23h30: ''30 23 1 * * df >>/tmp/log_df.txt'' * Tous les lundis à 22h28: ''28 22 * * 1 df >>/tmp/log_df.txt'' * Du 2 au 5 de chaque mois à 10h12 : ''12 10 2-5 * * df >>/tmp/log_df.txt'' * Tous les jours pairs du mois à 23h59 : ''59 23 */2 * * df >>/tmp/log_df.txt'' * Toutes les 5 minutes : ''*/5 * * * * df >>/tmp/log_df.txt'' * Tous les premiers dimanches du mois : ''1 2 * * 0 [ `/bin/date +\%d` -lt 8 ] && df >>/tmp/log_df.txt''