2014-02-22 44 views
0

我写了一个自定义管理命令post_message当我运行python manage.py post_message时,该命令执行得很好。调度django自定义命令与cron在虚拟环境内

现在我希望这个命令每10分钟运行一次。

我有一个虚拟envrironment。

我有一个文件 - msg.cron文件的内容如下 -

#!SHELL=/bin/bash 
*/10 * * * * source /home/username/Envs/project_name/bin/activate && /home/username/Code/project_name/manage.py post_message > /dev/null 

我已经做了使用chmod + X上msg.cron

这样做之后,我加入

crontab msg.cron 

现在,当我做crontab -l msg.cron的内容显示。

但管理命令没有运行,我错过了什么?

+0

尝试不使用'source',确保'activate'和'manage.py'可执行(并且第一行是'#!<解释器路径>')。 – isedev

回答

0

在这种情况下,您不需要激活virtualenv。您可以在virtualenv的bin目录中使用python。

*/10 * * * * source /home/username/Envs/project_name/bin/python /home/username/Code/project_name/manage.py post_message > /dev/null