Léa-Linux & amis :   LinuxFR   GCU-Squad   GNU
Script shell pour effectuer une action plusieurs fois
Envoyé par: Etienne_11

Bonjour, j'aimerais créer un script shell qui effectue une action toutes les x secondes et ce, sans jamais s'arrêter. Il bouclerait à l'infini mais n'effectuerait l'action que toutes les x secondes. Est-ce possible?
Ce qui complique les choses, c'est qu'en plus, je cherche à faire que ce "x" soit un nombre aléatoire compris entre 50 et 100 et d'après ce que j'ai vu, la fonction RANDOM n'accepte aucun argument et se contente de renvoyer un nombre entre 1 et 32767.
Si vous avez quelques pistes pour m'aider ou un exemple d'algo, ça m'aiderait beaucoup.

Merci d'avance.

Poste le Tuesday 20 February 2007 06:33:12
Répondre     Citer    
Re: Script shell pour effectuer une action plusieurs fois
Envoyé par: nicola

Ça s’appelle cron, où j’ai mal compris ?

--
On ne prête qu’aux riches, et on a bien raison, parce que les autres remboursent difficilement.
-+- Tristan Bernard (1866-1947) -+-

Poste le Tuesday 20 February 2007 07:10:18
Répondre     Citer    
Re: Script shell pour effectuer une action plusieurs fois
Envoyé par: Etienne_11

Effectivement c'est un peu le principe de cron mais d'après ce que j'ai vu, on n'a pas trop la possibilité de préciser de manière précise l'intervalle de temps (ça a l'air de se limiter à la minute mais je me trompe peut-être). De plus, avec cron, je ne peux pas générer de nombre aléatoire pour préciser cet intervalle de temps. Enfin pas que je sache mais j'avoue ne pas être trop câlé sur cron.

Poste le Tuesday 20 February 2007 21:48:06
Répondre     Citer    
Re: Script shell pour effectuer une action plusieurs fois
Envoyé par: nicola

Alors essaie anacron.

--
On ne prête qu’aux riches, et on a bien raison, parce que les autres remboursent difficilement.
-+- Tristan Bernard (1866-1947) -+-

Poste le Wednesday 21 February 2007 07:15:08
Répondre     Citer    
Re: Script shell pour effectuer une action plusieurs fois
Envoyé par: Sve@r

Citation
Etienne_11
Bonjour, j'aimerais créer un script shell qui effectue une action toutes les x secondes et ce, sans jamais s'arrêter. Il bouclerait à l'infini
mais n'effectuerait l'action que toutes les x secondes. Est-ce possible?
#!/bin/sh
nice 20     # Pour pas que le processus soit gourmand en temps CPU
while true
do
....action_a_effectuer
....sleep x
done

Citation
Etienne_11
Ce qui complique les choses, c'est qu'en plus, je cherche à faire que ce "x" soit un nombre aléatoire compris entre 50 et 100 et d'après ce
que j'ai vu, la fonction RANDOM n'accepte aucun argument et se contente de renvoyer un nombre entre 1 et 32767.
il te suffit de diviser RANDOm par 32767 et multiplier par X et tu te retrouves avec un nombre compris entre 0 et X !!!

L'homme qui murmurait à l'oreille des pingouins
[fr.lang.free.fr]

Poste le Thursday 22 February 2007 20:54:53
Répondre     Citer    

Veuillez vous authentifier auparavant pour commenter.

 

Ce forum !
Script shell pour effectuer une action plusieurs fois
Pour poser vos questions sur les scripts shell, le Perl, le C, etc... Attention : nous ne sommes pas des spécialistes du dev, ce forum est juste pour de petites aides ponctuelles concernant le développement et les outils de développement.

Sauf mention contraire, les documentations publiées sont sous licence Creative-Commons