Chinaunix首页 | 论坛 | 博客
  • 博客访问: 274047
  • 博文数量: 36
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 411
  • 用 户 组: 普通用户
  • 注册时间: 2015-05-04 22:05
个人简介

追求永无止境

文章分类
文章存档

2016年(3)

2015年(33)

分类: LINUX

2015-08-15 19:57:28

linux的工作调度方式分为两种:
    一种是例行性的,就是每隔一定的周期要来办的事项;
    一种是突发性的,就是这次做完以后就没有的那一种。
这两种功能的实现需要使用at与crontab这两个命令:
    at:是个可以处理仅执行一次就结束调度的命令;要执行at时,必须要有atd这个服务的支持。
    crontab:这个命令所设置的工作将会循环一直进行下去。可循环的时间有分钟、小时、天、周等。
首先安装at这个包:

点击(此处)折叠或打开

  1. yum install at
第一部分:仅执行一次的的工作调度
    启动atd服务:service atd start
    我们可以利用/etc/at.allow与/etc/at.deny这两个文件来进行at的使用限制。
        先寻找/etc/at.allow这个文件,写在这个文件中的用户才能使用at,没有在这个文件中的用户则不能使用at
        如果/etc/at.allow不存在,就寻找/etc/at.deny这个文件,若写在这个at.deny的用户则不能使用at,而没有在这个at.deny文件中的用户可以使用at了
        如果两个文件都不存在,那么只有root可以使用at这个命令。
    at基本的语法:
        at [-mldv] TIME   
        -m:当at的工作完成后,即使没有输出信息,以email通知用户该工作已完成
        -l:相当于atq,列出目前系统上面的所有用户的at调度
        -d:相当于atrm,可以取消一个在at调度中的工作
        -v:可以使用较明显的时间格式列出at调度中的任务列表
        -c:可以列出后面接的该项工作的实际命令内容
      TIME:时间格式
        HH:MM 在今天的HH:MM时刻进行,若已超过该时刻,则明天的HH:MM进行此工作
        HH:MM YY-MM-DD 强制规定在某年某月的某一天的特殊时刻进行该工作
        HH:MM [am|pm] +number [minutes | hours | days | weeks] 在某个时间点“再加多长时间后”才执行
            eg:at now + 5 minutes //一定要加s
第二部分:循环执行的例行性工作调度
    循环执行的例行性工作调度是有cron这个系统服务来控制的。
    /etc/cron.allow 将可以使用的crontab的账号写入其中,如不存在这个文件内的用户则不可以用crontab
    /etc/cron.deny 将不可以使用的crontab的账号写入其中,若未记录到这个文件当中的用户,就可以使用crontab
    crontab语法:
        crontab [-u username] [-l | -e | -r]
        -u 只有root才能进行这个任务,也即帮其它用户新建/删除crontab工作调度
        -e 编辑crontab的工作内容
        -l 查阅crontab的工作内容
        -r 删除所有的crontab的工作内容,若仅删除一项,用-e去编辑
阅读(1883) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~