我将python flask作为后端运行,并作为前端进行响应。每次启动我的应用程序时,我必须先在终端1中运行export FLASK_APP=app
,然后在终端2中运行flask start
,然后在终端2中运行npm start
。如何编写一个启动两个进程的脚本?
这是我的尝试:
#!/bin/bash
export FLASK_APP=microblog.py
flask run > /dev/null
npm start --prefix ~/app
答案 0 :(得分:2)
尝试一下:
#!/bin/bash
export FLASK_APP=microblog.py
flask run > /dev/null & pids=$!
npm start --prefix ~/app & pids+=" $!"
trap "kill $pids" SIGTERM SIGINT
wait $pids
此脚本在后台启动flask和npm,并存储它们的PID。之后,我们设置了一个陷阱-万一您击中CTRL - C
,两个程序都将被杀死。
wait
行将阻塞,直到flask和npm过程都完成为止-因此您可以轻松地通过CTRL-C
终止两者。