我有一个简单的脚本,该脚本执行一个称为sendemail的烧瓶命令(位于“主”蓝图中)。
位于/ home / ubuntu / tasks中的“任务”脚本:
cd /home/ubuntu/app
source venv/bin/activate
flask main sendemail
deactivate
当我运行时(从任何地方,包括主目录)
bash /home/ubuntu/tasks/task
该功能完全按预期运行。但是,当我将同一脚本添加到crontab时,它会产生错误,并通过电子邮件向我发送此消息:
/home/ubuntu/tasks/task: line 4: flask: command not found
我已确保安装了最新的烧瓶,并假定这可能与PATH变量有关-如何解决/调试此问题?
答案 0 :(得分:0)
由于您没有相同的环境变量,因此激活在cron中不起作用。您可以使用set > /path/to/your.log
来诊断...
您可以通过直接致电Flask来简化交易:
/home/ubuntu/app/venv/bin/flask main sendemail