项目重启方式
情景:
在有需要自重启项目中,重启项目的时候需要在项目代码中执行shell脚本,以达到项目重启的目的
前置条件:
1、demo项目(项目)
2、项目重启的shell脚本(项目重启的cmd命令群)
python调用shell的方式以及实现情况
1、 os.system(command)
使用方式
import os os.system('ls')
重启接口代码:
@router.get("/restart") def restart(): import os os.system('/bin/bash /home/shell/restart.sh')
代码解释:
os.system中空格前面为linux启动shell文件的脚本, 空格之后为重启项目的shell脚本(支持直接在command中测试)
接口调用结果:
在执行到关闭原来进程后,就无法继续向下执行shell命令了,这个就像是项目里面跑一段shell命令,项目不存在的时候,无法使用shell(按钮一键重启需要继续完善才可以)
2、subprocess模块
使用方式
import subprocess subprocess.call("ls",shell=True)
重启接口代码:
@router.get("/restart") def restart(): import subprocess subprocess.call("/bin/bash /home/shell/restart.sh", shell=True)
代码解释:
引号中为启动shell的命令
接口调用结果:
可达到重启项目的目的