我使用子进程模块调用外部程序(plink.exe)登录到服务器;但是当我调用通信来读取输出时,它是阻塞的。代码如下:蟒蛇子进程通信()块
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
我知道这个块是因为plink.exe
它还在运行;但我需要在子进程终止之前读取输出。无论如何要这样做?
你需要与砰砰互动,或者你只需要拨打电话和阅读标准输出没有阻塞? – Khelben 2010-01-25 15:42:20
相关:[Python:从subprocess.communicate()读取流式输入)(http://stackoverflow.com/q/2715847/4279) – jfs 2015-05-09 14:14:44