PHP exec 命令未从 Python 脚本返回完整数据
PHP exec command is not returning full data from Python script
我正在通过 PHP SSH 连接到服务器,然后使用 exec 在该服务器上 运行 一个 python 程序。
如果我通过 putty 连接到该服务器并通过命令行执行相同的命令,我得到的结果如下:
Evaluating....
Connecting....
Retrieving data....
1) Statement 1
2) Statement 2
.
.
.
N) Statement N
Python程序是别人写的...
当我通过 SSH php 连接时,我可以执行 $ssh->exec("ls")
并获得与在服务器命令行上一样正确的完整结果。但是当我尝试 $ssh->exec("python myscript.py -s statement 0 0 0");
时,我无法获得完整的结果,但我得到了一条随机线作为输出。
总的来说,如果有人遇到同样的问题并解决了,请告诉我。
谢谢
可能是输出缓冲造成的。尝试将 -u
选项添加到您的 Python 命令 - 这会强制 stdout、stdin 和 stderr 无缓冲。
我正在通过 PHP SSH 连接到服务器,然后使用 exec 在该服务器上 运行 一个 python 程序。
如果我通过 putty 连接到该服务器并通过命令行执行相同的命令,我得到的结果如下:
Evaluating....
Connecting....
Retrieving data....
1) Statement 1
2) Statement 2
.
.
.
N) Statement N
Python程序是别人写的...
当我通过 SSH php 连接时,我可以执行 $ssh->exec("ls")
并获得与在服务器命令行上一样正确的完整结果。但是当我尝试 $ssh->exec("python myscript.py -s statement 0 0 0");
时,我无法获得完整的结果,但我得到了一条随机线作为输出。
总的来说,如果有人遇到同样的问题并解决了,请告诉我。
谢谢
可能是输出缓冲造成的。尝试将 -u
选项添加到您的 Python 命令 - 这会强制 stdout、stdin 和 stderr 无缓冲。