Pour planifier une tache avec Cron il faut tout d’abord créer un fichier à cet endroit :
vi /etc/cron.d/monfichier
Il faut ensuite le remplir avec une ligne qui ressemble a ça :
mm hh jj MMM JJJ tâche
avec :
- mm correspond au minutes (0 à 59)
- hh représente l’heure (0 à 23)
- jj représente le numéro du jour du mois (1 à 31)
- MMM représente le numéro du mois de l’année (1 à 12) ou l’abréviation du nom du mois : jan, feb, mar … (en anglais)
- JJJ représente le jour de la semaine (le dimanche étant 0 ou 7, le lundi 1, etc …). Il est aussi possible d’utiliser les abréviations (sun, mon, etc…)
- tâche représente la commande ou le script qu’on veut exécuter
LE JOKER : *
Comme dans beaucoup d’applications informatique, le joker chez Cron est l’étoile « * ». Ainsi, si vous remplacez un quelconque paramètre d’une date par une étoile, cela signifie pour cron « quelque-soit la valeur de ce paramètre ».
Pour indiquer par exemple à Cron de lancer la tâche test.sh avec les argument arg1 et arg2 chaque dimanche à 1h nous utiliserons :
00 1 * * 7 test.sh arg1 arg2
Définition de la périodicité :
La périodicité est définie en séparant les 5 unités temporelles (minutes/heures/jours/mois/années).
Pour chacune de ses unités, les syntaxes suivantes sont utilisables :
- * : représente chaque unité de temps
- 5 : représente une unité de temps particulière, ici la cinquième
- 5-10 : représente un intervale, chaque unités entre 5 et 10 soit 5,6,7,8,9,10
- */5 : représente un cycle défini, ici toutes les toutes les 5 unités soit 0,5,10,15…
- 5,10 : représente une série définie, 5 et 10
Une fois notre fichier créé et rempli il faut recharger la configuration de Cron :
/etc/init.d/crond reload