Comment exécuter une tâche cron toutes les 2 heures

237

Comment puis-je écrire un Crontab qui exécutera mon /home/username/test.sh script toutes les 2 heures?

Vignesh
la source

Réponses:

385

Faites juste:

0 */2 * * *  /home/username/test.sh 

Le 0 au début signifie courir à la 0e minute. (S'il s'agissait d'un *, le script s'exécuterait toutes les minutes pendant toutes les deux heures.)

N'oubliez pas, vous pouvez vérifier syslog pour voir s'il a réellement fonctionné!

Adam
la source
@ ernest-conill Comment pouvez-vous le savoir? l'historique des révisions ne contient pas de version incluant un code différent: stackoverflow.com/posts/6423532/revisions
tutuDajuju
102

La ligne doit se lire soit:

0 0-23/2 * * * /home/username/test.sh

ou

0 0,2,4,6,8,10,12,14,16,18,20,22 * * * /home/username/test.sh
James Anderson
la source
3
"0-23 / 2" - entre les heures 0 et 23, exécutez toutes les 2 heures.
James Anderson
0-23 / 2 beaucoup mieux que * / 2
Kad
2
@Kad pourquoi en est-il ainsi?
Ciprian Tomoiagă
Et les heures impaires? Puis-je ajouter +1
Shravya Boggarapu
si votre cron le supporte, 0-23/2c'est toutes les heures paires et 1-23/2toutes les heures impaires, mais je préfère quand */2même.
Betlista
4

0 * / 1 * * * "À la minute 0 après chaque heure."

0 * / 2 * * * «À la minute 0 après toutes les 2 heures.»

C'est la bonne façon de définir des tâches cron pour chaque heure.

Bibin Joseph
la source
0

Pour entrer dans crontab:

crontab -e

écrivez ceci dans le fichier:

0 */2 * * * python/php/java yourfilepath

Exemple :0 */2 * * * python ec2-user/home/demo.py

et assurez-vous d'avoir conservé une ligne vierge après la dernière tâche cron dans votre fichier crontab

Suraj Kulkarni
la source