Linux–CentOS定时运行Python脚本
最近公司的项目开始进入运营阶段,数据库的记录也开始多了起来。看了postgresql的自动清理好像不太符合需求,暂定对接口请求记录表保留3个月内的记录,既然postgresql不支持那就发挥python的优势,自己写个脚本实现
执行所需
- Linux下安装crontab
- 符合自己需求的python脚本
由于自己和公司所使用的是云服务器,均已安装crontab,所以这里略过,有需要的小伙伴可以看看博主极客Geek的博客:http://blog.youkuaiyun.com/netdxy/article/details/50562864
操作步骤
这里有两种方法进行定时任务添加,分别是crontab -e和编辑/etc/crontab。两种方法的语法也略有不同,/etc/crontab的语法比crontab -e多了一个用户字段。
- crontab -e 用户级,不能设置用户字段
- /etc/crontab 系统级,只能root用户权限使用,需要设置用户字段
crontab -e
这种方式是用户级的,所有用户的可以使用,实际保存在/var/spool/cron/username中。但有的linux系统加在crontab -e会无效,这种方法不会对语法进行校验。具体操作步骤为:
crontab -e
- 添加定时任务,如每周一3点执行python脚本
0 3 * * 1 python /data/www/test.py
wq保存退出,完毕
语法为
# Example of job definition:
# .---------------- minute (0 - 59)
# | .------------- hour (0 - 23)
# | | .---------- day of month (1 - 31)
# | | | .------- month (1 - 12) OR jan,feb,mar,apr ...