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

相关推荐
小眼睛FPGA1 分钟前
【RK3568+PG2L50H开发板实验例程】Linux部分/FPGA dma_memcpy_demo 读写案例
linux·运维·科技·ai·fpga开发·gpu算力
weixin_437398218 分钟前
转Go学习笔记
linux·服务器·开发语言·后端·架构·golang
津津有味道17 分钟前
Qt C++串口SerialPort通讯发送指令读写NFC M1卡
linux·c++·qt·串口通信·serial·m1·nfc
JeffersonZU1 小时前
Linux/Unix文件IO(文件描述符、原子操作、文件数据结构、open、read、write、fcntl、dup)
linux·c语言·unix·gnu
南瓜胖胖1 小时前
【seismic unix 合并两个su文件】
服务器·unix
szekl2 小时前
HDMI 2.0 4×2矩阵切换器412HN——多信号输入输出的高清解决方案
linux·矩阵·计算机外设·电脑·ekl
weixin_399380692 小时前
k8s一键部署tongweb企业版7049m6(by why+lqw)
java·linux·运维·服务器·云原生·容器·kubernetes
阿巴~阿巴~2 小时前
Linux基本命令篇 —— uname命令
linux·运维·服务器
天空之城夢主2 小时前
KVM高级功能部署
linux·服务器
IT成长日记2 小时前
【Docker基础】Docker数据卷管理:docker volume ls及其参数详解
运维·docker·容器·volume ls