web-dev-qa-db-fra.com

Cron tous les jours à 18 h

J'essaie de comprendre comment configurer cron pour qu'il s'exécute tous les jours à 18 h. Est-ce correct?

La raison pour laquelle je demande, c'est pour un serveur de production, donc je dois être sûr.

* 18 * * *
20
David Custer
0 18 * * * command to be executed
^ you need to set the minute, too. Else it would be running every minute on the 18th hour

Comment configurer un cronjob en général:

 # * * * * *  command to execute
 # │ │ │ │ │
 # │ │ │ │ │
 # │ │ │ │ └───── day of week (0 - 6) (0 to 6 are Sunday to Saturday, or use names; 7 is Sunday, the same as 0)
 # │ │ │ └────────── month (1 - 12)
 # │ │ └─────────────── day of month (1 - 31)
 # │ └──────────────────── hour (0 - 23)
 # └───────────────────────── min (0 - 59)

Que signifie astérisque (*)

L'astérisque indique que l'expression cron correspond à toutes les valeurs du champ. Par exemple, l'utilisation d'un astérisque dans le 4ème champ (mois) indique chaque mois.

Sidenote

Autres caractères spéciaux dans les cronjobs

Barre oblique (/)

Les barres obliques décrivent les incréments de plages. Par exemple, 3-59/15 dans le 1er champ (minutes) indiquent la troisième minute de l'heure et toutes les 15 minutes par la suite. La forme "*/..." est équivalente à la forme "premier-dernier/...", c'est-à-dire un incrément sur la plus grande plage possible du champ.

Virgule (,)

Les virgules sont utilisées pour séparer les éléments d'une liste. Par exemple, l'utilisation de "MON, WED, FRI" dans le 5ème champ (jour de la semaine) signifie les lundis, mercredis et vendredis.

Trait d'union (-)

Les tirets définissent les plages. Par exemple, 2000-2010 indique chaque année entre 2000 et 2010 après JC, inclus.

Pourcentage (%)

Les signes de pourcentage (%) dans la commande, sauf s'ils sont échappés avec une barre oblique inversée (), sont modifiés en caractères de nouvelle ligne et toutes les données après le premier% sont envoyées à la commande comme entrée standard.

(source: https://en.wikipedia.org/wiki/Cron )

56
chris p bacon

Tu devrais utiliser:

0 18 * * *

Cela exécuterait le cron à la 0e minute à 18 heures. Vous pouvez tiliser un outil comme celui-ci à l'avenir.

12
pshah