关于linux系统下CRONTAB运行python脚本不生效

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于linux系统下CRONTAB运行python脚本不生效相关的知识,希望对你有一定的参考价值。

                                          关于linux系统下CRONTAB运行python脚本不生效
    运维中难免会在定时任务中同时使用shell和python脚本,shell脚本不生效大部分为环境变量的问题,在脚本前增加环境变量基本能解决,如加上 source /etc/profile。

    最近遇到python脚本不能执行的情况,状态描述,如目录/home/script/SH下有脚本Qdd.py和download.sh,手动是可以执行的是生效的,如下:
    python3 /home/script/SH/Qdd.py

    放到定时任务crontab中,如下:
    15 03 * * * python3 /home/script/SH/Qdd.py > /dev/null 2>&1
    看cron日志是执行了的,但是目录/home/script/SH下没有下载的东西,后将Qdd.py加入到download.sh脚本下,如下:

#!/bin/bash
python3 /home/script/SH/Qdd.py > /dev/null 2>&1
查看/home/script/SH目录没有下载的内容,后来看了下root根目录,在其根目录下,看来是运行了只不过是下载到了root根目录。

将脚本download.sh做如下修改:
#!/bin/bash
cd /home/script/SH
python3 Qdd.py > /dev/null 2>&1

定时任务测试
15 09 * python3 /home/script/SH/download.sh > /dev/null 2>&1
目录/home/script/SH下有下载内容
成功运行

注意:多版本python注意全路径,区分版本

以上是关于关于linux系统下CRONTAB运行python脚本不生效的主要内容,如果未能解决你的问题,请参考以下文章

关于linux下crontab的使用

crontab

修改crontab 不重启服务能生效吗

crontab命令 脚本定时运行

关于linux下crontab下脚本执行时,获取的值不正确

关于linux下crontab下脚本执行时,获取的值不正确