Linux定时任务

定时计划任务概念及分类 

首先通过概念我们可以将定时计划任务分为两类:

       1、定时执行一次任务:at ,(batch)

       2、 周期性的运行某任务:crontab 

           系统任务调度:系统周期性所要执行的工作,比如写缓存数据到硬盘,日志清理等。/etc/crontab文件就是系统任务调度的配置文件

           用户任务调度:用户定期要执行的工作,比如用户数据备份,定时邮箱提醒等。用户可以使用crontab工具来定制自己的任务计划。所有用户定义的crontab文件都被保存在/var/spool/cron目录中

定时任务语法及配置文件详解

      1、mail命令
            使用mail命令时,首先必须将sendmail启动。service start sendmail
            可能有些用户没有安装,通过 yum install sendmail -y 安装。

             选项

                       

选项 作用
- s 表明邮件主题
- c 写明抄送地址
- b 写明密送地址

              常见的发信格式

                 mail -s test user1@user1.com   //第一种,直接在shell中编辑,编辑完按Ctrl D结束   

                 echo "mail content" | mail -s test user1@user1.com   //第二种,使用管道方法    

                 mail -s test user1@user1.com < file   //第三种,将file文件内容作为邮件发信 

        2、at命令

                   a、语法

                        at  [选项]  [参数]

                    b、选项

选项 作用
- V 印出版本编号
- q 使用指定的伫列(queue)来存储,at的资料是存放在所谓的queue中,使用者可以同时使用多个queue,,而queue的编号为a-z,A-Z共52个
- m 即使程序/指令执行完成后没有输出结果,也要寄封信给使用者
- f file 读入预先写好的命令档。使用者不一定使用交互模式来输入,可以经所有的指定写入档案后再一次性读入
- l 列出所有指定(也可以使用atq)
- d 删除指定(也可以用atrm)
- v 列出所有已完成但未删除的指定

                     c、相关命令

                                 batch:在系统负荷允许的情况下执行at任务,即就是在系统空闲时才执行at任务

        3、crond命令:(Linux系统是由cron(crond)系统服务来控制的。Linux系统上原本就有很多计划性工作,因此crond这个系统服务是默认启动的,为用户提供的使用命令crontab)

      a、查看配置文件

        cat /etc/crontab

        Linux定时任务

     b、时间表示法:

         (1)特定值
                                       给定时间点的有效取值范围内
                               (2)*
                                        给定时间点的有效取值范围内,表示“所有”
                               (3)离散取值
                                        在时间点上使用逗号分隔:#,#,#
                               (4)连续取值
                                        在时间点上使用 - 来链接:#-#
                                (5)表示步长
                                         /# ,#即步长,eg:在分钟上定义,/2 :即为每两分钟执行一次

                c、语法结构图

                               Linux定时任务

              d、如果没有安装服务规则:um install crontab -y

              e、服务操作说明:

                               service crond start     //启动服务
                               service crond stop     //关闭服务
                               service crond restart  //重启服务
                               service crond reload  //重新载入配置
                               service crond status  //启动服务

               f、选项:

选项 作用
- e 编辑任务
- l 列出所有任务
- r 移除所有任务;即删除/ver/spool/cron/USERNAME文件
- i 在使用 - r 时提醒用户确认
- u user root可以指定用户管理cron任务

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

上一篇:Linux服务器上crontab命令与配置


下一篇:shell脚本与crontab定时器的运用