django踩坑(四):终端输入脚本可正常执行,而加入crontab中无任何输出

使用crontab执行python脚本时,有时会遇到脚本无法执行的问题。这是因为crontab在执行任务时使用的环境变量与我们在终端中使用的环境变量不同。具体来说,crontab使用的环境变量是非交互式(non-interactive)环境变量,而终端则使用交互式(interactive)环境变量。这导致了某些环境变量在crontab中不可用,从而影响了python脚本的执行。

如下图:

这段代码生成的执行命令是:

python /data/projects/xinjiang_titan/db_building/tests.py

通过在终端输入可以正常执行该脚本,且正常输出结果。然而加入crontab中每分钟执行一次时,却发现没有任何输出。

解决方案:

使用绝对路径来执行python脚本。我们需要找到python执行文件的路径:

然后将python用绝对路径来执行:

/root/anaconda3/envs/bigdata/bin/python /data/projects/xinjiang_titan/db_building/tests.py

再跑脚本就正常输出结果了。

相关推荐
小马不起床3 小时前
Django 后端实战指南_14:门店、省份、用户门店关系查询接口
数据库·django·sqlite
小马不起床3 小时前
Django 后端实战指南_16:动作分类、动作库、动作收藏查询接口
数据库·python·django
ycydynq4 小时前
django搜索功能
数据库·python·django
weixin_BYSJ19872 天前
【计算机毕设】基于Spring_Boot_Vue的马拉松报名与选手成绩追踪系统05445
java·vue.js·spring boot·学习·spring·django·课程设计
小马不起床3 天前
Django 后端实战指南_10:用户扩展档案信息表
python·django·sqlite
小马不起床3 天前
Django 后端实战指南_9:前后端完整联调和问题修复
python·django·状态模式
ycydynq3 天前
django用Bootstrap 模态框 在同一页面实现增删改查
django·bootstrap·jquery
雪域迷影4 天前
Python Django 7 小时课程
开发语言·python·django
Wx-bishekaifayuan4 天前
springboot铜仁非遗之家76938-计算机课程设计、毕业设计
java·spring boot·后端·spring·django·课程设计·旅游
VidDown4 天前
上线三个月后的第一次事故:一个 Django 服务的日志、监控与故障复盘
数据库·python·django·wpf·音视频·视频编解码