在逛论坛时偶然间发现了一个巨厉害的python模块(主要是自己之前没有发现) : subprocess
这个模块支持在 python 脚本中直接调用服务器的 shell , 执行命令, 大爱:
from subprocess import call
# 获取当前环境的python解释器路径
import sys
py_path = sys.executable
# 在shell中执行字符串所代表的命令
cmd = """cd ~;
cd my_project;
{} manage.py makemigrations;
{} manage.py migrate;
""".format(py_path, py_path)
# 调用shell环境, 执行命令
call(cmd, shell=True) # shell = True 允许调用shell
# 这里一共执行了四条命令:
# 1.cd ~ 进入当前的用户目录
# 2.cd my_project
# 3.django项目, 生成迁移文件
# 4.进行模型的迁移
每次项目部署前, 提前将部署步骤封装在一个py脚本里, 可以大大提高部署效率, 对于一个不怎么精通shell脚本的偏开发的后台人员而言, 简直犹如神助, 感觉已经怀孕............