Linux系统crontab定时调度Python脚本

时间:2021-07-13 10:35:37

Linux系统crontab定时调度Python脚本

一、Python脚本随Linux开机自动运行

#Python脚本:/home/edgar/auto.py
#用root权限编辑以下文件:/etc/rc.local
vi /ect/rc.local

在exit 0上面编辑启动脚本的命令:

python3 /home/edgar/auto.py > /home/edgar/auto.log

最后重启Linux,脚本就能自动运行并打印日志了。

二、Python脚本定时启动(crontab)

#Python脚本:/home/edgar/auto.py
#用root权限编辑以下文件:/ect/rc.local
vi /etc/crontab

在文件末尾添加以下命令:

2 * * * * root /usr/bin/python3.5 /home/edgar/auto.py > /home/edgar/auto.log

以上代码的意思是每隔两分钟执行一次脚本并打印日志;

三、crond服务

#查看定时任务
crontab -l
#删除定时任务
crontab -r #查看cron服务的启动情况
chkconfig --list | grep cron
#结果:crond 0:off 1:off 2:on 3:on 4:on 5:on 6:off
#系统启动级别如果是1-4,cron服务都会开机自动启动的 #查看crontab服务状态:
service crond status #设置该服务的启动项
/sbin/service crond start
/sbin/service crond stop
/sbin/service crond restart
/sbin/service crond reload
#以上1-4行分别为启动、停止、重启服务和重新加载配置。

四、crontab语法

* * * * * user command
分 时 日 月 周 用户 命令

五、crontab示例

#每分钟执行一次
* * * * * user command #每隔2小时执行一次
* */2 * * * user command (/表示频率) #每天8:30分执行一次
30 8 * * * user command #每小时的30和50分各执行一次
30,50 * * * * user command(,表示并列) #每个月的3号到6号的8:30执行一次
30 8 3-6 * * user command (-表示范围) #每个星期一的8:30执行一次
30 8 * * 1 user command (周的范围为0-7,0和7代表周日)