我正在使用Popen运行命令,但我不知道如何编写一个命令完成后调用的回调。有什么想法吗?
感谢。 滨
答案 0 :(得分:2)
您可以致电communicate()
:
p = subprocess.Popen('find . -name "*.txt"', stdout=subprocess.PIPE, stderr=subprocess.PIPE)
stdout, stderr = p.communicate()
您也可以调用wait()
,但如果子进程填充其输出缓冲区,这可能会导致问题。
答案 1 :(得分:1)
您可以使用Popen对象的p.poll()方法。
http://docs.python.org/library/subprocess.html#subprocess.Popen.poll