任务计划和周期任务

一次性任务:at、batch


at命令只执行一次,使用交互模式输入命令,/etc/at.allow和/etc/at.deny允许/禁止使用at命令用户
命令格式
  at Time交互模式输入命令
  at -f /path/to/file Time使用文件内用作为at命令
  at -l查看所有命令,同atq
  at -c Job_Num查看具体命令内容
  at -d Job_Num删除命令,同atrm
  at -q Alpha Time指定队列的字母
    Time格式:
      ××:××具体当天几点执行命令
      -t [[CC]YY]MMDDhhmm[.ss]使用精确时间执行命令
      now + Num {min|hour}当前时间之后分钟/小时执行命令

batch不能指定时间,在系统空闲时执行命令

周期性任务:系统crond、用户crond


系统crond任务手动维护系统周期任务,提交任务模式与at不同,其中shell解释器和PATH路径与一般情况下设置不同,命令最好使用绝对路径,自动忽略空白行,井号为注释
crontab:分为系统cron和用户cron,周期性去执行某项任务,一般分钟级配置,秒级任务需额外配置,cron.allow和cron.deny允许/禁止使用crontab命令用户
系统crond任务编辑配置文件/etc/crontab,如修改后不能立即执行,手动重启systemctl restart crond

[root@ZYB ~]# cat /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

取值特点:
  1、特定值
  2、指定位上所有值
  3、离散取值用逗号分开,如1,2,3
  4、连续取值,如1-4
  5、指定步长,如
/2,每两个步进单位执行一次命令
用户crond任务执行crontab命令,单独任务新建、修改、删除都使用-e选项
命令格式:
  crontab -l查看用户crond任务列表
  crontab -e使用指定编辑器(貌似就是vi编辑器)设定crond任务,带有检错功能,若使用vim编辑器直接编辑配置文件无检错功能
  crontab -r删除所有的crond任务
  -e -u User_Nameroot账户下编辑其他用户的crond任务

posted @ 2018-04-12 20:55  张飘扬  阅读(1138)  评论(0编辑  收藏  举报