linux crontab执行python定时任务,附问题解决方案
1.安装python3.6(默认目录)
目前有一个需求是定时执行某个 python 脚本,但是在 Linux上设置 crontab后,不生效?手动执行生效?于是使用下面的方法执行即可:
大体思路为先写一个 shell 脚本,脚本中执行 python 文件,然后定时执行 shell 脚本即可。具体原因是
crontab使用的PATH 跟python使用的不在一条道上面 只能改道行
2.使用命令创建脚本文件
vim test.sh
然后再test.sh 脚本结合自身的情况输入内容,示例:
#!/usr/bin/bash
/usr/bin/python3 /opt/data-docking/test.py
在test.py文件的头部加入
#!/usr/bin/python
# -*- coding: UTF-8 -*-
给test.py和test.sh授予执行权限
chmod a+x test.py
chmod a+x test.sh
然后使用如下命令,编辑定时任务:
crontab -e
假如设定每天 8 点执行脚本,设置如下:
0 8 * * * /opt/data-docking/test.sh