cron是一个linux下的定时执行工具,可以在无需人工干预的情况下运行作业。
由于Cron 是Linux的内置服务,如果它不自动起来, 可以用以下的方法启动、关闭这个服务:
/sbin/service crond start # 启动服务 /sbin/service crond stop # 关闭服务 /sbin/service crond restart # 重启服务 /sbin/service crond reload # 重新载入配置
查看服务是否已经运行用:ps -ax | grep cron
任务调度文件的位置:/etc/crontab
- 新增调度任务可用两种方法:
- 在命令行输入:crontab -e 输入
i
编辑添加相应的任务,wq存盘退出。 - 直接编辑/etc/crontab 文件,即vi /etc/crontab,添加相应的任务。
- 查看调度任务
crontab -l
# 列出所有调度任务crontab -l -u zhans
# 列出用户zhans
的所有调度任务
- 删除任务调度工作
crontab -r
# 删除所有任务调度工作
cron文件语法:
* * * * *
要执行脚本第一个 * 一个小时当中的第几分钟 0-59
第二个 * 一天当中的第几小时 0-23
第三个 * 一个月中的第几天 1-31
第四个 * 一年当中的第几月 1-12
第五个 * 一周当中的星期几 0-7 (0和7代表星期天)
- root表示以root用户身份来运行
- run-parts表示后面跟着的是一个文件夹,要执行的是该文件夹下的所有脚本
记住几个特殊符号的含义:
- "*"代表取值范围内的数字,
- "/"代表"每",
- "-"代表从某个数字到某个数字,
- ","分开几个离散的数字
- 例子:
45 22 * * *
#在每天22点45分执行0 17 * * 1
#在每周1的17点0分执行0 5 1,15 * *
#每月1号和15号的凌晨5点0分执行40 4 * * 1-5
#每周一到周五的凌晨4点40分执行*/10 4 * * *
#每天凌晨4点,每隔10分钟执行一次10 * * * * *
#每小时的第10分钟执行0 0 1,15 * 1
#每月1号和15号,每周一的0点0分都会执行 (星期几和几号最好不要同时出现)*/n
代表每隔多久执行一次
- 验证工具