1

从控制台运行一个 python 脚本时,Python 会打印一些行,例如,..

hello,
World.
...
...

为了使用 php 在网页上显示,我尝试过..

exec("sudo -u username python temp.py  >> logdata.log")

并打印 logdata.log。但在那我在网页上得到了无序的输出。我发现这是刷新数据的问题。

我在谷歌搜索时阅读了有关system()命令的信息,它执行外部命令并打印输出。它还会在发生时刷新输出。所以我试过..

system("sudo -u username Python temp.py")

我想知道它在哪里打印输出。

4

1 回答 1

0

你为什么不使用 popen 。

os.popen('sudo -u username Python temp.py').read()

或更好的子流程:-

import subprocess
proc = subprocess.Popen('sudo -u username Python temp.py', stdout=subprocess.PIPE, shell=True)
(out, err) = proc.communicate()
print "program output:", out
于 2013-07-04T05:27:56.320 回答