计划任务crontab
安装crontab服务
1, yum install -y vixie-cron
如果提示crond命令不存在,可能被误删除了,CentOS下可以通过这个命令重新安装:
yum -y install crontabs
2,crontab文件所在位置【centos】
/var/spool/cron
3,crontab配置文件
vim /etc/crontab
3.2 /etc/cron.deny 和 /etc/cron.allow 文件
/etc/cron.deny 表示不能使用crontab 命令的用户
/etc/cron.allow 表示能使用crontab的用户。
如果两个文件同时存在,那么/etc/cron.allow 优先。
如果两个文件都不存在,那么只有超级用户可以安排作业。
4,查看crontab
crontab -l
5,编辑crontab
crontab -e
6,删除crontab
crontab -r
/etc/init.d/crond start
/etc/init.d/crond stop
/etc/init.d/crond restart
或
service crond start|stop|restart| reload
Crontab 格式说明
我们可以用crontab -e添加要执行的命令。 命令执行的结果,无论是标准输出还是错误输出,都将以邮件形式发给用户。
添加的命令必须以如下格式:
* * * * * /command path
前五个字段可以取整数值,指定何时开始工作,第六个域是字符串,即命令字段,其中包括了crontab调度执行的命令。各个字段之间用spaces和tabs分割。
前5个字段分别表示:
分钟:0-59
小时:1-23
日期:1-31
月份:1-12
星期:0-6(0表示周日)
还可以用一些特殊符号:
*:表示任何时刻
,: 表示分割
-:表示一个段,如第二端里: 1-5,就表示1到5点
/n :表示每个n的单位执行一次,如第二段里,*/1,就表示每隔1个小时执行一次命令。也可以写成1-23/1.
例子
#每15分钟执行一次ls命令 [即每个小时的第0 15 30 45 60分钟执行ls命令 ]
*/15 * * * * ls
#每小时的1分钟开始
01 * * * * root run-parts /etc/cron.hourly
#每天4:02开始
02 4 * * * root run-parts /etc/cron.daily
#星期日4:22开始
22 4 * * 0 root run-parts /etc/cron.weekly
#每月的1号的4:42开始
42 4 1 * * root run-parts /etc/cron.monthly
5 * * * * ls 指定每小时的第5分钟执行一次ls命令
30 5 * * * ls 指定每天的 5:30 执行ls命令
30 7 8 * * ls 指定每月8号的7:30分执行ls命令
30 5 8 6 * ls 指定每年的6月8日5:30执行ls命令
30 6 * * 0 ls 指定每星期日的6:30执行ls命令