记录一次 Linux crontab 执行django 脚本 失败 的经历和解决办法
2024-08-23 22:46:57
目的是想通过定时任务来执行一次数据统计,本来可以用celery来做,但是想着这个项目整个就没用到异步的地方,所以决定用crontab来做.之前做过数据库的热备份,想来用该没啥问题,但是现实打脸啪啪响.
具体现象是: 通过注册新的定时任务执行shell脚本,脚本中执行Python脚本,然后Python脚本一直没有执行效果.
这不应该呀,然后写了个普通的helloworld类型的脚本,发现跑着没问题.
那就应该是环境问题,然后按照通常的方案来处理,在Python文件中添加path路径,还是不行.
最后网上找了个输出错误日志的办法,将错误日志导出,发现问题了.
我是以root的身份注册执行定时任务的,然后crontab将文件的执行位置放在了 /root 下 !
好吧, Python提供了文件操作的库 os,那就用os来切换位置好了.
好了, 当切换路径之后,执行位置更换了,也就不存在当前位置不在导包列表中的问题了.
后面附上此次问题解决的关键, 错误日志的输出方法,对我们小白来说,这是很关键的.
0表示键盘输入
1表示标准输出
2表示错误输出.
上面就是把执行的错误信息输出到指定文件
最新文章
- 搭建高可用的rabbitmq集群 + Mirror Queue + 使用C#驱动连接
- 《C#本质论》读书笔记(15)使用查询表达式的LINQ
- python——操作Redis
- [MOSEK] Stupid things when using mosek
- CAS客户端服务器端配置步骤
- POJ 1190(深搜)
- docker commit容器
- curl 取不到第二个参数解决方法
- Android 6.0doze和standby 的一点理解
- AsyncTask和Handler的对比
- iOS_SN_BlueTooth (二)iOS 连接外设的代码实现
- 关于cookie的使用
- Partitioner分区过程分析
- python socketserver实现客户端多并发
- 在IntelliJ IDEA中添加repository模板
- 《Linux就该这么学》第十八天课程
- python--迭代器(Iterator)
- CSS基础【1】:体验CSS
- Go-MySQL-Driver
- 基本UDP套接字编程
热门文章
- MSSQL 如何导出db所有用户权限创建语句
- functional-page-navigator 组件
- optistruct如何将多个约束置于一个约束集合中
- MySQL高可用架构之MySQL5.7组复制MGR
- JS - 创建只读属性
- SpringBoot 集成mongodb(2)多数据源配置
- value_counts()函数
- SQLServer中的top、MySql中的limit、Oracle中的rownum
- Web前端开发 --》 如何实现页面同时在移动端和pc端的兼容问题
- SpringBoot 使用JPA+MySQL+Thymeleaf 总结 一