En fait, mon objectif réel n'est pas powershell mais Jenkins. Et il s'avère que la sortie du programme s'affiche très bien dans Jenkins...
Néanmoinns, je refais quelques tests pour tirer ça au clair. Si je me mets dans Idle dans l'interpréteur interactif, voici ce que j'obtiens :
>>> subprocess.call("doxygen -v")
0
>>>
Je vois brièvement une fenêtre cmd qui s'ouvre et qui se ferme.
Si j'ouvre powershell ou cmd, que je lance l'interpréteur interactif et que je tape les mêmes lignes de code, j'obtiens alors :
>>> subprocess.call("doxygen -v")
1.8.13
0
Ca sent l'histoire de qui lance le subprocess et comment il le lance. C'est pas super clair mais je sais pas si ça sert à grand chose de vraiment savoir...
PS : jai testé d'appeler le petit programme que tu donnes. J'ai fait un main.py qui lance un sub.py :
1 2 3 4
| import subprocess
print "Call subprocess"
subprocess.call("python sub.py")
print "Done" |
Lancé via Idle :
Partager