Linux定时任务Crontab命令简单操作(centos7)
本人小白一枚,偶然间需要用定时任务跑python脚本,于是整理了简单的 Crontab 命令并记录下来,希望对初学者有些帮助。 如有不足之处,也欢迎各位大神来指导,hiahia!
一、定时任务的编辑
crontab –e
例如,在每天的23:30执行路径下foo.py脚本,执行后的日志为定义路径下的error.log 注:路径要写绝对路径
30 23 * * * /root/anaconda3/bin/python3 /usr/corn/foo.py >> /usr/corn/error.log 2>&1
每个*号代表分别如下:
| | | | |
| | | | ±---- 星期中星期几 (0 - 7) (星期天 为0)
| | | ±--------- 月份 (1 - 12)
| | ±-------------- 一个月中的第几天 (1 - 31)
| ±------------------- 小时 (0 - 23)
±------------------------ 分钟 (0 - 59)
查看已编辑的定时任务
crontab -l
删除已编辑的所有定时任务
crontab -r
检测cron定时服务是否自启用
systemctl is-enabled crond.service
enable表示已启用自启动
disable标识未启用自启动
如果未启用自启服务,则开启cron自启用
systemctl enable crond.service
如果已经启用,想要cron关闭自启动
systemctl disable crond.service
二、查看cron服务的启动状态
查看cron服务的启动状态
systemctl status crond.service
非自启动时启动cron服务[命令没有提示]
systemctl start crond.service
停止cron服务[命令没有提示]
systemctl stop crond.service
重启cron服务[命令没有提示]
systemctl restart crond.service
重新加载cron服务[命令没有提示]
systemctl reload crond.service
三、查看定时任务的执行日志
tail -f -n 200 /var/log/cron
踩坑:
配置之中,遇到了错误,查看原因是当前时间和系统时间不一致问题,修改如下:
查看系统时间
date
例如:查看当前系统时间以及时区
结果是:
Mon Jul 8 09:23:31 UTC 2019
更改系统时间时区
timedatectl set-timezone Asia/Shanghai
再次查看
date
结果一致:
Mon Jul 8 17:25:28 CST 2019
重启crontab 服务[命令没有提示]
systemctl restart crond.service