2012-11-02 3 views
5

Y a-t-il un moyen de concevoir l'expression de cron de manière à ce qu'elle s'exécute toutes les 70 minutes ou 210 minutes, c'est-à-dire> 60 minutes. J'ai essayé de chercher ceci, mais je n'ai pas pu le trouver.Expression cron pour tous les travaux> 60 minutes

Je suis finalement allé avec un script wrapper qui ferait le temps requis de vérifier qui a été appelé toutes les 5 minutes (ou le temps récurrent optimale).

Comment accomplir une telle tâche dans l'expression de cron?

+0

Eh bien, le faire courir après une quantité d'heures est possible, mais quelque chose comme 70 minutes? Je ne pense pas. – TheZ

+0

Vous pouvez utiliser 'at'. – fedorqui

+0

duplication possible de [Comment puis-je configurer cron pour exécuter certaines commandes toutes les heures et demie?] (Http://stackoverflow.com/questions/247626/how-can-i-set-cron-to-run-certain -commands-every-one-and-half-hours) – sendmoreinfo

Répondre

0

Fondamentalement, vous devez exécuter votre Cron chaque minute:

* * * * * 

et permettent de déterminer votre script si ses dernières dates d'exécution de il y a 70 ou 210 minutes.
Si c'est le cas, cela se poursuivrait avec le reste du script.
Si ce n'est pas le cas, il quitterait immédiatement. En d'autres termes, n'essayez pas de tout mettre dans l'expression cron. Comme le remarque Keith Thompson, vous pouvez exécuter ce script moins souvent (0 0/5 0? * * *), Avec un test à 70 minutes ou toutes les 30 minutes (0 0/30 0 ? * * *) avec un test à 210 minutes.

+0

Non, cela fonctionnera à 0 et 35 minutes après chaque heure. –

+0

@KeithThompson Droite. Fixé. – VonC

+0

C'est une façon de le faire, mais pour un intervalle de 70 minutes, le travail cron peut s'exécuter seulement une fois toutes les 10 minutes, et pendant 210 minutes, il peut s'exécuter toutes les 30 minutes. –

0

partent toutes les 70 minutes

* */1.1666 

ou

Exécuter toutes les 210 minutes

* */3.5 
Questions connexes