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

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

相关推荐
言乐612 小时前
Python排名统计折线图
开发语言·python·django·virtualenv·pygame
Wx-bishekaifayuan13 小时前
springboot户外登山社交小程序19787-计算机课程设计、毕业设计
spring boot·后端·python·spring·elasticsearch·django·课程设计
FYKJ_201014 小时前
springboot刑事案件管理系统03047-计算机课程设计、毕业设计
vue.js·spring boot·python·mysql·typescript·spark·django
FYKJ_201015 小时前
springboot助农产品销售商城05829-计算机课程设计、毕业设计
java·spring boot·python·mysql·spark·django
Wx-bishekaifayuan16 小时前
springboot社区扶贫救助管理系统13300-计算机课程设计、毕业设计
spring boot·后端·python·django·课程设计·express·旅游
Wx-bishekaifayuan18 小时前
springboot甘肃特产服务平台50301-计算机课程设计、毕业设计
spring boot·后端·python·django·课程设计·express·旅游
FYKJ_201018 小时前
springboot雅集社区养老管理系统04456-计算机课程设计、毕业设计
vue.js·spring boot·python·mysql·typescript·spark·django
FYKJ_201019 小时前
springboot羽毛球场地管理系统00626-计算机课程设计、毕业设计
vue.js·spring boot·python·mysql·typescript·spark·django
Wx-bishekaifayuan19 小时前
django医院营收信息预测系统49414-计算机课程设计、毕业设计
spring boot·后端·python·django·课程设计·express·旅游
Wx-bishekaifayuan19 小时前
springboot会议室预约管理系统42030-计算机课程设计、毕业设计
spring boot·后端·python·django·课程设计·express·旅游