OVH Cloud OVH Cloud

do shell script "logiciel &" et bloquage de l'appelant

4 réponses
Avatar
Thomas
bonjour :-)


dans plusieurs logiciels qui savent lancer des applescript, je lance des
logiciels faits pour le terminal :
do shell script "logiciel &"
mais le logiciel appelant reste bloqué tout le temps de l'execution du
logiciel appelé, malgré le "&" :-(

par exemple, dans un applescript que je lance au demarrage, je lance un
serveur vnc, et je suis obligé de tuer le script, sinon on est obligé de
le forcer à quitter manuellement pour pouvoir eteindre l'ordi

est ce possible de faire tourner les 2 en parallele svp ?

--
Mon CV : http://tDeContes.hd.free.fr/divers/emploi/
http://palestine-hn.org/
http://www.aapel.org/bdp/BLpas_concerne.html

"don't put your PC out of the window, put windows out of your PC"
"petit Free qui devient grand, gêne les requins blancs"

4 réponses

Avatar
Vincent Lefevre
Dans l'article ,
Thomas écrit:

dans plusieurs logiciels qui savent lancer des applescript, je lance des
logiciels faits pour le terminal :
do shell script "logiciel &"
mais le logiciel appelant reste bloqué tout le temps de l'execution du
logiciel appelé, malgré le "&" :-(


Essaie de rediriger stdin (descripteur 0) vers /dev/null, et
éventuellement stdout (descripteur 1) et stderr (descripteur 2)
vers un fichier (qui peut aussi être /dev/null). Les blocages
sont souvent dûs à des descripteurs restés attachés à un
terminal (je ne sais pas comment applescript fonctionne,
mais c'est peut-être le problème).

--
Vincent Lefèvre - Web: <http://www.vinc17.org/>
100% accessible validated (X)HTML - Blog: <http://www.vinc17.org/blog/>
Work: CR INRIA - computer arithmetic / Arenaire project (LIP, ENS-Lyon)

Avatar
Patrick Stadelmann
In article <20061029014204$,
Vincent Lefevre <vincent+ wrote:

Dans l'article
,
Thomas écrit:

dans plusieurs logiciels qui savent lancer des applescript, je lance des
logiciels faits pour le terminal :
do shell script "logiciel &"
mais le logiciel appelant reste bloqué tout le temps de l'execution du
logiciel appelé, malgré le "&" :-(


Essaie de rediriger stdin (descripteur 0) vers /dev/null, et
éventuellement stdout (descripteur 1) et stderr (descripteur 2)
vers un fichier (qui peut aussi être /dev/null). Les blocages
sont souvent dûs à des descripteurs restés attachés à un
terminal (je ne sais pas comment applescript fonctionne,
mais c'est peut-être le problème).


Voir http://developer.apple.com/technotes/tn2002/tn2065.html

Patrick
--
Patrick Stadelmann


Avatar
Thomas
In article (Dans l'article) <20061029014204$,
Vincent Lefevre <vincent+ wrote (écrivait) :

Dans l'article
,
Thomas écrit:

dans plusieurs logiciels qui savent lancer des applescript, je lance des
logiciels faits pour le terminal :
do shell script "logiciel &"
mais le logiciel appelant reste bloqué tout le temps de l'execution du
logiciel appelé, malgré le "&" :-(


Essaie de rediriger stdin (descripteur 0) vers /dev/null, et
éventuellement stdout (descripteur 1) et stderr (descripteur 2)
vers un fichier (qui peut aussi être /dev/null). Les blocages
sont souvent dûs à des descripteurs restés attachés à un
terminal (je ne sais pas comment applescript fonctionne,
mais c'est peut-être le problème).


merci :-)

peux tu me preciser comment ecrire ca (à la place de "logiciel &") stp ?
(je sais plus si c'est "logiciel > /dev/null &" ou
"logiciel & > /dev/null" par exemple)

--
Mon CV : http://tDeContes.hd.free.fr/divers/emploi/
http://palestine-hn.org/
http://www.aapel.org/bdp/BLpas_concerne.html

"don't put your PC out of the window, put windows out of your PC"
"petit Free qui devient grand, gêne les requins blancs"


Avatar
Thomas
In article (Dans l'article)
,
Patrick Stadelmann wrote (écrivait) :

In article <20061029014204$,
Vincent Lefevre <vincent+ wrote:

Dans l'article
,
Thomas écrit:

dans plusieurs logiciels qui savent lancer des applescript, je lance des
logiciels faits pour le terminal :
do shell script "logiciel &"
mais le logiciel appelant reste bloqué tout le temps de l'execution du
logiciel appelé, malgré le "&" :-(


Essaie de rediriger stdin (descripteur 0) vers /dev/null, et
éventuellement stdout (descripteur 1) et stderr (descripteur 2)
vers un fichier (qui peut aussi être /dev/null). Les blocages
sont souvent dûs à des descripteurs restés attachés à un
terminal (je ne sais pas comment applescript fonctionne,
mais c'est peut-être le problème).


Voir http://developer.apple.com/technotes/tn2002/tn2065.html


merci bcp :-)

oui, en y reflechissant, quand on lance logiciel & avec un terminal,
il nous laisse lancer d'autres logiciels aussitot,
mais il ne perd pas de vue pour autant le 1er logiciel, puisqu'il peut
afficher sa sortie par la suite :-)

je m'imaginais qu'avec "&", le shell se detachait completement du
logiciel lancé

--
Mon CV : http://tDeContes.hd.free.fr/divers/emploi/
http://palestine-hn.org/
http://www.aapel.org/bdp/BLpas_concerne.html

"don't put your PC out of the window, put windows out of your PC"
"petit Free qui devient grand, gêne les requins blancs"