目录结构
.
├── index.py
├── some.sh
└── test
└── 1.txt
import subprocess
from subprocess import Popen, PIPE
from subprocess import check_output
from flask import Flask
from flask import send_from_directory
def get_shell_script_output_using_communicate():
session = Popen(['./some.sh'], stdout=PIPE, stderr=PIPE)
stdout, stderr = session.communicate()
if stderr:
raise Exception("Error "+str(stderr))
return stdout.decode('utf-8')
def get_shell_script_output_using_check_output():
stdout = check_output(['./some.sh']).decode('utf-8')
return stdout
app = Flask(__name__)
@app.route('/',methods=['GET',])
def home():
return '<pre>'+get_shell_script_output_using_check_output()+'</pre>'
@app.route('/test/<path:path>')
def send_static(path):
return send_from_directory('test',path)
app.run(debug=True)
//some.sh
#!/bin/sh
echo "hi from shell script"
echo "hello from shell script"