我将SSH2库用于我的Web应用程序,并且试图从代码中获取python“ print()”结果。问题是,当我连接到SSH2并执行stream_get_contents将输出转换为变量时,它没有显示python print(“”)输出。 python没有输出。当我通过ssh运行脚本时,会得到python打印信息。我需要将python输出转换为PHP变量。 我发现当我执行bash echo“ test”时,它在ssh2上输出。那就是我需要的,但是来自python脚本。我整夜都在尝试解决此问题时,请有人帮忙。
使用echo执行任何bash脚本。但是当使用python输出时,它不会进入相同的回显类型或其他任何类型。
// PHP API脚本,应返回python脚本中的代码
$stream = ssh2_exec($connection, "python -u fetch.py 0000 test");
//剥离了Python脚本,我已经尝试了所有可能的输出。它应该像bash的“回声测试”一样输出
#subprocess.call('echo 0',shell=True)
if elems[0].is_displayed():
print("Game PIN not valid!")
subprocess.call('echo invalid',shell=True)
sys.stdout.write("invalid")
sys.stdout.flush()
else:
print ("Game PIN is valid!")
subprocess.call('echo valid',shell=True)
sys.stdout.write("valid")
sys.stdout.flush()
我什么也没得到输出,因为python或SSH2无法将连接保持活动状态,因为python脚本与流分离。 SSH2仅执行脚本,但不返回任何输出。使用“ echo”将返回结果,因为这是要返回的命令。我需要将python输出输出到PHP变量中,以便可以在其他位置执行它。