bloc python subprocess commun ()

Je suis en utilisant le sous-processus module d'appeler un programme externe (plink.exe) pour vous connecter à un serveur, mais quand je l'appelle communiquer pour lire la sortie, c'est le blocage. Le code est ci-dessous:

 import subprocess
 process = subprocess.Popen('plink.exe [email protected] -pw 123456'.split(), shell=False, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
 print process.communicate() #block here

Je sais que le bloc est parce que plink.exe il court encore; mais j'ai besoin de lire la sortie avant que le sous-processus se termine. Est-il de toute façon?

source d'informationauteur Mingo | 2010-01-25