⑴、点:在未来的某个时间点执行一次某个任务,通过两个命令来实现atbatch

   在命令提示符下输入at 时间,下面键入需要在那一刻执行的任务,并且可以支持多条任务,输入完第一条以后按回车输入第二条任务即可,ctrl+d即可提交计划任务

   时间指定方式:

       绝对时间:HH:MM  ,  DD.MM.YY , MM/DD/YY

       相对时间:now+#单位即可

                单位:minuteshoursdaysweeks

       模糊时间:noonmidnightteatime

At任务的执行结果将以邮件的形式发给安排任务的用户。

      Fg:三分钟后执行ls /etc/ cat /etc/fstab

      

at作业列表查看命令:at -l

删除作业:ad -d 作业号即可         

At的配置文件/etc/at.deny/etc/at.allow

   如果deny单独存在,则是deny以为的所有用户都可以使用at命令

   如果allow单独存在,则是只允许allow内的用户可以使用at命令

   如果同时存在,则只允许allow内的用户使用at命令

batch:不需要指定时间,自动在系统空闲的时候执行指定的任务。其他用法与at相似。

⑵、周期性的执行某任务

  1、 Cron:自身是一个不间断允许的服务。但是有时候会因为外因造成的关机或者服务中断,而在过去的时间点该执行未执行的任务讲不在会被执行。

   anacroncron的补充程序,能够实现让cron因为各种原因在过去的时间该实行而未执行的任务在恢复正常执行一次。

  2Cron的任务又分为:系统任务和用户任务

系统cron任务

   定义文件/etc/crontab

  格式:分钟 小时 天 月 周 用户 任务

用户cron任务

   定义文件/var/spool/cron/USERNAME

  格式:分钟 小时 天 月 周  任务

3、cron定义时间格式:

   时间有效:

     分钟:0-59

 小时:0-23

 天:1-31

 月:1-12

 周:0-7,07都表示周日

  时间通配表示:

     *:对应所有有效值

     3 * * * * :每小时

 3 * * * 7:每周

 13 12 * * *:每天

 13 12 6 * *:每月

 13 13 6 7 *:每年

     ,:离散时间点

     10,40 * * * *:每小时的10分和40

 - :连续时间点

                 10 02 * * 1-5:每周的周一到周五的210

                 /# :对应取值范围每多久一次(#频率)

                 */3 * * * *:每三分钟

 fg:每两小时执行一次

                      01 */2 * * *  

 cron的执行结果将以邮件的实现发送给管理员。

     */3 * * * * /bin/cat /etc/fstab 2> /dev/null

4、cron执行任务的环境变量

         cron支持的所有命令都去PATH环境变量的指定路径下去找

 PATH /bin:/sbin:/user/bin:/usr/sbin

     所以定义cron任务的时候使用命令的绝对路径

         如果利用脚本文件执行cron任务,则在脚本内定义环境变量即可,PATH=.....格式如下

      

 
   
  1. SHELL=/bin/bash  
  2. PATH=/sbin:/bin:/usr/sbin:/usr/  
  3. MAILTO=root 
  4. HOME=/  
  5. # run-parts  
  6. 01 * * * * root run-parts /etc/cron.hourly  
  7. 02 4 * * * root run-parts /etc/cron.daily  
  8. 22 4 * * 0 root run-parts /etc/cron.weekly  
  9. 42 4 1 * * root run-parts /etc/cron.monthly  

5、用户的cron管理命令:crontab

             crontab -l:列出用户的所有cron任务

     crontab -e:新建一个cron任务,可以检查语法错误

             

 crontab -r:移除所有任务。

 crontab -u UDERNSMR:管理其他用户的cron任务,结合上面的-e -r等命令。

   6anacrontab

     配置文件/etc/anacrontab

        

 
   
  1. SHELL=/bin/sh                         PATH=/sbin:/bin:/usr/sbin:/usr/bin  
  2. MAILTO=root 
  3.  
  4.  
  5.  1 65 cron.daily run-parts /etc/cron.daily  
  6.  
  7.               (1一个每天任务 65:开机以后的65分钟执行)  
  8.  
  9. 7 70 cron.weekly run-parts /etc/cron.weekly  
  10.  
  11. 30 75 cron.monthly run-parts /etc/cron.monthly