使用 cron
执行定时任务可能会遇到的一些问题,网络上的解决方案比较杂乱且不系统,这边做一下简单的归纳。
环境检查 (Centos)
检查 crontab 工具是否安装
1 | crontab -l |
查看 crond 服务是否启动
1 | service crond status |
安装 cron
1 | yum install vixie-cron |
1 | yum install crontabs |
ubuntu 常用命令:
安装 cron 服务
apt-get install cron
选择编辑器 - 输入序号就行,记住一定要选择对编辑器
select-editor
service cron restart [重启服务]
service cron start [启动服务]
service cron stop [停止服务]
重启 crontab 服务
1 | systemctl restart crond |
查看 cron 状态
1 | service crond status |
crontab 定时语法
格式说明
字符含义:
*
代表取值范围内的数字;
/
代表” 每”;
-
代表从某个数字到某个数字;
,
代表离散的取值 (取值的列表);
0|7
都表示星期天。
一些示例
常用时间写法
1 | * * * * * //每分钟执行 |
常用命令举例
1 | 每天晚上21:30重启apahce |
crontab 工具使用
1 | 全局系统配置文件 |
使用 cron 定时任务注意事项
1 | # which python //查看系统默认安装的python2的路径 |
指定 python 绝对路径去执行 python 脚本,例如:
1 | 30 13 * * * root /usr/local/bin/python3 /opt/res1.py > /opt/err.log 2>&1 & |