Comment exécuter un travail cron toutes les 72 minutes? Ou certains pas si joli nombre comme ça?Comment faire un travail cron toutes les 72 minutes
Répondre
Vous ne pouvez pas directement le faire depuis cron/crontab.
Les tâches Cron s'exécutent sur une planification spécifique et non sur un intervalle spécifique. Une alternative serait d'établir un emploi du temps approximatif de votre «toutes les 72 minutes» en courant à minuit, 1:12, 2:24, 3:36, ..., et en l'étirant pour approximer à minuit. Votre fichier crontab pourrait spécifier toutes ces heures comme des temps à exécuter. Une autre solution consisterait à avoir une application distincte gérer la planification et déclencher votre application.
Utiliser at (man at). Demandez à votre application ou à votre script de démarrage de calculer un délai de démarrage de 72 minutes dans le futur et de planifier elle-même l'exécution avant qu'elle ne commence à fonctionner.
Disponible sur Windows XP et Vista aussi.
Voici un exemple pour gnu/linux: à command.sh -f maintenant + 72 minutes
s/programmez-le/programmez-vous pour exécuter à nouveau/ –
Espérons que cela devienne la réponse acceptée. Une fois que vous avez démarré le travail, il peut se replier à chaque fois qu'il s'exécute. Vous pourriez cependant constater que vous n'êtes plus synchronisé. alors assurez-vous de replanifier votre travail au début de votre script plutôt que le dernier. –
Vous devez définir exactement 20 tâches pour cela - à savoir mettre un à 00h00, un à côté à 01 : 12, le suivant à 02:24, etc.
20 itérations font une journée complète.
Malheureusement, c'est la seule façon de le faire, car les tâches cron sont configurées dans un calendrier fixe au lieu d'être exécutées, disons, "après X minutes, la dernière tâche a été exécutée".
Comme cron
exécute des travaux en fonction du temps et non en fonction de l'intervalle, il n'existe pas de moyen simple de le faire. Cependant, même si c'est un peu un hack, vous pouvez configurer plusieurs lignes dans crontab
jusqu'à ce que vous trouviez le dénominateur commun. Puisque vous voulez une tâche à exécuter toutes les 72 minutes, il doit exécuter aux heures suivantes:
- 00:00
- 01:12
- 02:24
- 03:36
- 04 : 48
- 06:00
- 07:12
- ...
Comme vous pouvez le voir, le motif se répète toutes les 6 heures avec 5 tâches. Ainsi, vous aurez 5 lignes dans votre crontab
:
0 0,6,12,18 * * * command 12 1,7,13,19 * * * command 24 2,8,14,20 * * * command 36 3,9,15,21 * * * command 48 4,10,16,22 * * * command
L'autre option, bien sûr, est de créer un script démon emballage ou shell qui exécute et dort pendant le temps désiré jusqu'à l'arrêt.
Vous pouvez toujours prendre l'approche du déclenchement de cron chaque minute et laisser votre script quitter immédiatement s'il a été exécuté il y a plus de 72 minutes.
N'utilisez pas cron ...
#!/bin/sh
while [ true ]
do
sleep 4320
echo "Put your program here" &
done
Soyez prudent si le programme se bloque, vous devrez le redémarrer. En outre, après un redémarrage de la machine, le programme ne sera pas en cours d'exécution, vous devrez le démarrer. –
Oui, mieux vaut en faire un démon et utiliser monit par exemple pour le garder en marche. – mahemoff
Euh je sais que c'est trop tard, mais je regardais quelques problèmes de planification et j'ai vu cette question.
Il suffit de faire cela dans votre crontab
*/72 * * * * /home/script.sh
ne fonctionne pas, au moins pas avec vixie cron 3.0 – hop
Les minutes sont 0-59. http://www.pantz.org/software/cron/croninfo.html – dresende
Cela ne fonctionnera pas, les minutes ont entre 0 et 59 et tout ce qui dépasse 30 minutes affichera à x passé, c'est-à-dire que 34 afficheront à minuit passé, pas tous 34 minutes. – omega1
- 1. Exécution d'un travail Cron
- 2. Cron travail: garder les 20 dernières lignes
- 3. Appel d'une fonction toutes les 10 minutes
- 4. Comment télécharger une page Web toutes les cinq minutes?
- 5. Syntaxe de travail Cron sur Google App Engine
- 6. Pour vérifier si le script s'exécute toutes les 5 minutes
- 7. django "manage.py index" ne s'exécute pas comme un travail cron
- 8. MySQL appelle une procédure stockée toutes les x minutes
- 9. travail cron de longue date via wget/curl?
- 10. AJAX appeler un code PHP et obtenir une réponse toutes les quelques minutes
- 11. Déclenche automatiquement un rafraîchissement asp.net mvc ajax toutes les X minutes
- 12. Comment créer un noeud à partir d'un travail cron dans drupal?
- 13. Comment faire pour sortir les paramètres de travail dans les flux de travail SharePoint
- 14. Comment puis-je configurer un travail cron sur mon site en utilisant PHP?
- 15. Comment configurer cron pour exécuter certaines commandes toutes les heures et demie?
- 16. Je veux exécuter un fichier en utilisant cron travail pas dans un navigateur
- 17. (RAILS) Boucler un râteau personnalisé toutes les 2 minutes, mauvaise idée? Une meilleure façon de mettre en œuvre?
- 18. Comment appeler cron pour mettre à jour mon site (PHP)?
- 19. Comment définir un fichier dans cron job
- 20. Comment faire pour que Fiddler écoute toutes les adresses IP
- 21. Programatically faire toutes les relations CascadeType.MERGE
- 22. Comment installer .exe en tant que travail cron ou tâche planifiée? C#
- 23. Mise à jour du contrôle PictureBox toutes les minutes sous Windows Formulaire
- 24. Essayer d'appeler une fonction toutes les 3 minutes en utilisant JavaScript
- 25. Comment faire pour migrer toutes les URL dans les propriétés svn: externals à travers un référentiel?
- 26. script cron pour agir comme une file d'attente OU une file d'attente pour cron?
- 27. Travail de cron pour se connecter au serveur sql et exécuter un sproc en utilisant python
- 28. Faire ce code pour l'image resize() travail
- 29. Comment créer un travail Cron pour sauvegarder la sauvegarde MySQL et FTP sur mon serveur de sauvegarde?
- 30. Comment faire en sorte que cron exécute quelque chose chaque "N" ème minute, où n% 5 == 1?
Pourquoi faut-il être 72 minutes? – Zifre
Ne doit pas être, juste quelque chose qui n'est pas un bon nombre pair. –