On Monday 25 September 2006 14:13, Tian wrote:
> > Pas mal, comme idée. Mais pourquoi lancer la fonction timeout en tâche
> > de fond, puis la repasser en premier plan ? Ne peut-on pas faire
> > directement (en simplifiant) :
> >
> > COMMAND=blablabla
> > TIMEOUT=60
> >
> > $COMMAND &
> > sleep $TIMEOUT
> > kill -9 $! >/dev/null 2>&1
>
> Parce que dans ce cas on attendra toujours obligatoirement $TIMEOUT
> secondes meme si l'execution de $COMMAND est plus rapide que ca.
Exact.
> En plus cet exemple ne marche pas car $! doit contenir le PID du dernier
> processus lance je suppose (je ne connaissais pas cette variable
> speciale, merci pour l'information).
Oui, c'est vrai. Par contre, ton truc ne marche pas non plus. J'obtiens
un :
fg: no job control
et je ne comprend pas pourquoi...
On n'est pas loin de la solution, pourtant!
--
Frédéric
http://www.gbiloba.org