出力をTest_Pipe.pyから実行したいのですが、Linux上で次のコードを試しましたが、動作しませんでした。subprocess.Popen()からの出力の取得方法
Test_Pipe.py
import time
while True :
print "Someting ..."
time.sleep(.1)
Caller.py
import subprocess as subp
import time
proc = subp.Popen(["python", "Test_Pipe.py"], stdout=subp.PIPE, stdin=subp.PIPE)
while True :
data = proc.stdout.readline() #block/wait
print data
time.sleep(.1)
線proc.stdout.readline()
をブロックしたので、データなしプリントアウト。
重複:http://stackoverflow.com/search?q=%5Bpython%5D+subprocess+output、http://stackoverflow.com/questions/803265/getting-realtime-output-using-subprocess、http: //stackoverflow.com/questions/1277866/python-subprocess-module-looping-over-stdout-of-child-process –