繁体   English   中英

在控制台中获取python子进程的输出

[英]Get the output of python subprocess in console

process = subprocess.check_output(BACKEND+"mainbgw setup " + str(NUM_USERS), shell=True,\
                                          stderr=subprocess.STDOUT)

我正在使用以上语句在基于django-python的服务器中运行C程序进行某些计算,有一些printf()语句在服务器运行并执行子stdout时希望在stdout上看到其输出,那完成 ?

如果你真的不需要输出提供给您的Python代码为字符串,你可以只使用os.system ,或subprocess.call没有重定向stdout别处。 然后,您的C程序的stdout将直接转到python程序的stdout

如果你需要同时流媒体stdout ,并获得了输出为一个字符串,你应该使用subprocess.Popen (或旧popen2.popen4 ),以获得输出流的文件描述符,然后反复从流中读取行,直到你耗尽时, 。 同时,您保留所抓取的所有数据的串联版本。 是循环的示例。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM