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全栈开发:架构解析与性能优化实战
性能优化·架构·django
小石潭记丶1 天前
Django服务开发镜像构建
django·sqlite·pip
华子w9089258591 天前
基于 Python Django 和 Spark 的电力能耗数据分析系统设计与实现7000字论文实现
python·spark·django
博观而约取2 天前
Django 数据迁移全解析:makemigrations & migrate 常见错误与解决方案
后端·python·django
哈里谢顿3 天前
Django REST Framework 中序列化器的Meta详解
django
博观而约取3 天前
Django ORM 1. 创建模型(Model)
数据库·python·django
小王子10243 天前
Django+DRF 实战:从异常捕获到自定义错误信息
后端·django·web开发
ઈ一笑ഒ3 天前
Django
django
伊织code4 天前
Wagtail - Django 内容管理系统
后端·python·django·wagtail