我有一个从外部传感器读取的脚本(并且永远运行),当我以./zwmeter /dev/ttyUSB0 300
运行它时,它表现正常并连续打印输出到stdout。我在Ubuntu上使用bash。我想将此命令作为python脚本的一部分执行。我试过了:
from subprocess import Popen, PIPE
proc = Popen(['./zwmeter', '/dev/ttyUSB0', '300'], stderr=PIPE, stdout=PIPE)
print proc.communicate()
但我得到的程序永远运行而不产生任何输出。我不关心stderr,只关注stdout并尝试拆分打印但仍然没有成功。
感谢您提供任何帮助!
答案 0 :(得分:0)
我认为问题与我打电话不会终止的过程有关。我在这个网站上找到了一个很好的工作: http://eyalarubas.com/python-subproc-nonblock.html