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

相关推荐
CS创新实验室21 分钟前
计算机考研408【操作系统】核心知识点总结
java·linux·考研·计算机·操作系统·408
bulucc30 分钟前
vim 快捷操作
linux·编辑器·vim
CAFEBABE 3431 分钟前
安装完docker之后怎么使用
运维·docker·容器
智象科技33 分钟前
化繁为简:一体化运维平台的效率革命
运维·it运维·一体化运维·itsm
萧技电创EIIA37 分钟前
威纶通触摸屏入门指南(从安装到入门使用)
运维·服务器·网络
我是koten37 分钟前
用Ansible查找文件并记录文件名的playbook
linux·运维·centos·ssh·ansible·find·playbook
wanhengidc44 分钟前
在线服务器的应用场景都有哪些?
运维·服务器·科技·游戏·智能手机·云计算
炼丹精神小伙1 小时前
ssh通过多跳板机连服务器
运维·服务器·ssh
吕了了1 小时前
116Dism++备份系统,如何选择性的备份文件?
运维·windows·电脑·系统
清平乐的技术专栏1 小时前
电脑核心参数一次讲透
运维