周期性计划任务crontab的使用

[root@py ~]# vim /etc/crontab
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root

# For details see man 4 crontabs

# Example of job definition:
# .---------------- minute (0 - 59)
# |  .------------- hour (0 - 23)
# |  |  .---------- day of month (1 - 31)
# |  |  |  .------- month (1 - 12) OR jan,feb,mar,apr ...
# |  |  |  |  .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# |  |  |  |  |
# *  *  *  *  * user-name  command to be executed
[root@py ~]# systemctl status crond.service 
● crond.service - Command Scheduler
   Loaded: loaded (/usr/lib/systemd/system/crond.service; enabled; vendor preset: enabled)
   Active: active (running) since Tue 2017-06-06 00:38:39 CST; 9min ago
 Main PID: 1530 (crond)
   CGroup: /system.slice/crond.service
           └─1530 /usr/sbin/crond -n

Jun 06 00:38:39 py systemd[1]: Started Command Scheduler.
Jun 06 00:38:39 py systemd[1]: Starting Command Scheduler...
Jun 06 00:38:39 py crond[1530]: (CRON) INFO (RANDOM_DELAY will be scaled with factor 80% if used.)
Jun 06 00:38:40 py crond[1530]: (CRON) INFO (running with inotify support)


设置周期任务时候一定确保开机启动这个服务
对于系统级别的计划任务,需要执行的命令和脚本都放在这里:
[root@py ~]# ls /etc/cron.*
/etc/cron.deny

/etc/cron.d:
0hourly  raid-check  sysstat

/etc/cron.daily:
0yum-daily.cron  logrotate  man-db.cron  mlocate  rhsmd

/etc/cron.hourly:
0anacron  0yum-hourly.cron

/etc/cron.monthly:

/etc/cron.weekly:


针对用户级别的计划任务
对root用户
命令:crontab -e 创建一个计划任务
      crontab -l 显示
      crontab -r 删除计划任务
分    时    日    月    周 谁做后面的事情 命令
[root@py ~]# crontab -e
13 1 * * * echo `date` > /tmp/date.txt

no crontab for root - using an empty one
crontab: installing new crontab
[root@py ~]# cat /tmp/date.txt 
Tue Jun 6 01:13:02 CST 2017
[root@py ~]# 

特殊写法
# 9 18 22 这几天0点0分开始执行备份脚本
0 0 9,18,22 * * /usr/bin/back.sh

#9-18号
0 0 9-18 * * /usr/bin/back.sh


#每五分钟执行一次
*/5 * * * * 

eg:每天删除5天前的文件
0 0 * * * find /home/log/ -type f -mtime +5 -exec rm {} \;

#使用root给普通用户指定crontab
[root@py ~]# crontab -u username -e/-l/-r^C


anacron
    cron用控制循环执行工作,如果我要设定机器每早八点进行备份服务器。除非我机器保证八点这个时间不会关机,如果关机了,cron中的脚本,在下次开机将不会被执行
    anacron并没有取代cron的意思,anacron用户机器重启后会侦测停机期间,有没有cron执行的计划任务,如果有,会立即执行一下没有执行的任务

 

posted @ 2017-06-06 01:38  rumenzq  阅读(1437)  评论(0编辑  收藏  举报