我想在Flask应用程序中运行一个shell命令并尝试获取输出。我正在使用以下应用程序:
from flask import Flask
import subprocess
app = Flask(__name__)
@app.route("/")
def hello():
cmd = ["ls"," -l"]
p = subprocess.Popen(cmd, stdout = subprocess.PIPE,
stderr=subprocess.PIPE,
stdin=subprocess.PIPE)
out,err = p.communicate()
return out
if __name__ == "__main__" :
app.run()
这个shell命令是可以的。我在外面检查过了,但从浏览器中得到了“内部服务器错误”的提示。
编辑:正如第一个答案指出的那样,它有一个错字...但现在它运行正常了,但我在浏览器中没有得到任何输出...
cd
,而应该是cmd
。 - nmz787cd
是来自问题。我在第一行就提到了打字错误。 - falsetru