Python 如何在Flask webapp中拆分子流程的输出行

Python 如何在Flask webapp中拆分子流程的输出行,python,flask,Python,Flask,如何分割脚本的输出并在flask webapp中显示 from flask import Flask, render_template, redirect, url_for, request import subprocess import os import datetime import time app = Flask(__name__) def api(): cmd = ["/usr/dummy.ksh"] p = subprocess.Popen(cmd, shell

如何分割脚本的输出并在flask webapp中显示

from flask import Flask, render_template, redirect, url_for, request
import subprocess
import os
import datetime
import time
app = Flask(__name__)

def api():
    cmd = ["/usr/dummy.ksh"]
    p = subprocess.Popen(cmd, shell=True, stdout=subprocess.PIPE, 
    stderr=subprocess.PIPE, universal_newlines=True)                    
    stdout, stderr = p.communicate()
    return stdout
@app.route("/")
def index():
    return render_template('subprocess.html', subprocess_output=api())


if __name__ == "__main__":
   app.run(host='0.0.0.0', debug=True)
“我希望在flask应用程序上逐行看到伪脚本的标准输出。但是,我在一个字符串中获得所有输出

烧瓶网页中的所需输出:

Script completed step 1
script completed step 2
all done...exiting
Script completed step 1 script completed step 2 all done...exiting
烧瓶网页中的电流输出:

Script completed step 1
script completed step 2
all done...exiting
Script completed step 1 script completed step 2 all done...exiting
  • 您可以将输出包装在
    标记中

  • 您可以向输出中添加HTML换行符,例如:

    返回“
    ”。加入(stdout.splitlines())


  • 你能修改我的代码并显示它吗?我应该对我的return语句进行此更改吗?还是需要将其添加到HTML中?第一个方法用于模板,第二个方法只是对你的
    return
    语句进行更改。修改了HTML后,它就工作了。添加了以下{{subprocess\u output}