在Raspberry Pi上启动Flask应用程序中的子进程

2024-03-28 22:31:08 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个烧瓶应用程序,运行.py,它使用子进程执行shell文件,你好.sh你好.sh文件激活一个虚拟环境,并在树莓派上启动一个安全摄像头程序。在

运行.py

app = Flask(__name__)

@app.route("/", methods=['GET', 'POST'])
def camera_toggle():
    subprocess.Popen('/home/pi/hello.sh')
    return "Hello, world."

你好.sh

^{pr2}$

问题: 跑步时运行.py从航站楼开始,一切正常。但我补充道运行.py致rc.本地文件,所以它在启动时启动,这不起作用。我必须关闭烧瓶应用程序,并从终端重新启动它才能使它工作。在

有什么想法吗?这是文件权限问题还是stdout/GUI问题?我试过子流程.Popen, subprocess.call,并使用不同的stdout选项。我也试过shell=True,但似乎没有任何效果。在


Tags: 文件py程序app应用程序烧瓶进程sh