如何在django-crontab中正确设置多个环境变量
问题原因
CRONTAB_COMMAND_PREFIX配置项的内容会被直接拼接在每条定时任务执行命令的头部,完全遵循Shell的环境变量声明语法。用逗号分隔多个变量不符合Shell语法规则,因此配置不会生效。
正确配置方法
多个环境变量之间直接用空格分隔即可,参考配置:
CRONTAB_COMMAND_PREFIX = "STAGE=production TOKEN=ABC"
生效操作
修改配置后,需要重新执行命令将定时任务同步到系统crontab才能生效:
python manage.py crontab add
同步完成后可以执行crontab -l查看生成的定时任务条目,确认环境变量已经正确拼接在命令前即可。
特殊场景注意
如果配置的环境变量值本身包含空格,需要对变量值做转义加引号处理,示例:
CRONTAB_COMMAND_PREFIX = "STAGE=production TOKEN=ABC APP_NAME=\"my custom app\""
内容的提问来源于stack exchange,提问作者Chau Loi
相关产品推荐
相关产品推荐

