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

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

相关推荐
鼎鼎大名的浪子1 小时前
Django 模板继承
python·django·sqlite
q567315231 小时前
Django 文件上传时出现 500 错误
开发语言·数据库·后端·python·django·sqlite
fish_study_csdn4 小时前
使用Django 搭建自动化平台
python·django·自动化
计算机学姐6 小时前
基于python+django+vue的社区爱心养老管理系统
开发语言·vue.js·后端·python·mysql·django·web3.py
胖胖日记6 小时前
Django笔记一:搭建Django环境与URL路径访问
笔记·django
计算机学姐19 小时前
基于Python的可视化在线学习系统
开发语言·vue.js·后端·python·学习·mysql·django
计算机学姐19 小时前
基于Python的电影票房数据分析系统
开发语言·vue.js·hive·后端·python·spark·django
u01037310620 小时前
Django 创建好的模块怎么在后台显示
数据库·django·sqlite
给我起把狙1 天前
django中F()和Q()的用法
数据库·python·django
IT研究室1 天前
计算机毕业设计选题推荐-校园车辆管理系统-Java/Python项目实战(亮点:数据可视化分析、账号锁定)
java·spring boot·python·django·毕业设计·源码·课程设计