linux 定时任务的调试20230919

python脚本的linux定时任务

crontab经常会遇到的问题就是环境变量的加载不到的导致脚本运行失败的问题test

在/home/pyapp/anaconda3/envs/cs_test_env/bin/python路径中指定了你的Conda虚拟环境中的Python可执行文件。

我们直接在cron作业中调用了Python脚本,而不是使用source activate

cron的设置

bash 复制代码
crontab -e
bash 复制代码
SHELL=/bin/bash
PATH=/usr/bin:/bin:/home/pyapp/anaconda3/bin
31 21 * * * /home/pyapp/anaconda3/envs/cs_test_env/bin/python /home/pyapp/workspace/autotest.py

定时任务的调试方法

临时修改定时任务为每分钟执行

临时更改 cron 时间:如果您确实需要测试脚本在 cron 中的实际行为,可以临时将 cron 时间设置为每分钟一次,例如:

bash 复制代码
* * * * * /home/pyapp/script/check_sett.sh >> /home/pyapp/cron.log 2>&1

想将标准输出和错误都重定向到 /home/pyapp/cron.log

模拟测试

bash 复制代码
env -i SHELL=/bin/bash HOME=/home/pyapp USER=pyapp /home/pyapp/script/check_sett.sh >> /home/pyapp/cron.log 2>&1

这里的 >> /home/pyapp/cron.log 将标准输出追加到 cron.log 文件,而 2>&1 将标准错误也重定向到同一个文件。

相关推荐
2301_807288638 小时前
MPRPC项目制作(第四天)
java·服务器·前端
_kank_8 小时前
Linux 文件权限深度解析与实战指南
linux
LCG米8 小时前
工业自动化嵌入式开发实战:基于ARM7与μC/OS-II的焊接机控制系统设计与实现
运维·c语言·自动化
@YDWLCloud8 小时前
做独立站,用阿里云国际版还是 Cloudflare?答案出乎意料
服务器·网络·阿里云·云计算
执笔论英雄9 小时前
【RL]expand_requests干啥的
服务器·开发语言·python
Zeku9 小时前
20251125 - 为什么Linux是非实时操作系统?
linux·服务器
sz66cm9 小时前
Linux基础 -- 进程运行状态 之 fatal_signal_pending函数
linux
2***c4359 小时前
nginx服务器实现上传文件功能_使用nginx-upload-module模块
服务器·前端·nginx
k***85849 小时前
Nginx中$http_host、$host、$proxy_host的区别
运维·nginx·http
Kyan.W9 小时前
shell好用的工具
linux·shell