如何为crontab设置嵌套的(类似json的)环境变量



我有等环境变量

VAR1={'key1': 5, 'key2': 8}

VAR1="{'key1': 5, 'key2': 8}"

在作为环境变量工作的脚本中使用。我想在.env文件中使用它,以便与cron作业一起使用,如下所示:

* * * * * /etc/.env python script.py > src/out.log

该脚本与上面的环境变量示例配合使用。当我在docker容器中使用它并为docker指定环境变量时,它也能工作。

但是,环境变量的语法在与cron一起使用时似乎不起作用。为什么

为什么这种语法在普通的python脚本和docker中是正确的,而在cron中却不正确?

cron正在输出:

.env: 1: 5,} not found

我想你必须这样写:

* * * * * /bin/bash -c "/etc/.env python script.py > src/out.log"

错误消息似乎正在执行/etc/.env文件。

最新更新