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 将标准错误也重定向到同一个文件。

相关推荐
行初心2 分钟前
uos基础 systemd-resolve 命令执行报错与参考处理方法
运维
小陈phd3 分钟前
langgraph从入门到精通(一)——langgraph概念解析
linux·运维·数据库
阿巴~阿巴~8 分钟前
解锁HTTP方法奥秘:GET与POST的深度探索与实战演示
服务器·网络·网络协议·http·get·post·请求方法
inquisiter11 分钟前
cove-salus-tellus测试程序时序逻辑
linux·服务器·网络·riscv
这儿有一堆花12 分钟前
告别“脚本小子”:真正理解 Linux 包管理器
linux
噜啦噜啦嘞好24 分钟前
Linux:线程池
linux·运维·c++
屿行屿行29 分钟前
【Linux】音视频处理(gstreamer和ffmpeg的实际应用)
linux·ffmpeg·音视频·视频编解码
用户311879455921831 分钟前
银河麒麟V10 申威架构 docker-compose rpm 包安装教程(附命令)
linux
峥嵘life32 分钟前
Android EDLA 搭建Linux测试环境简介
android·linux·运维
小嘟嘟1333 分钟前
第3章 Shell 条件判断:解决 90% 的分支逻辑问题
linux·运维·shell