Crontab介绍

一、Crontab是什么

  我总是喜欢将一些特别专业的词汇翻译成比较浅显易懂的词语,可能并不是很准确,但是我觉得更便于理解。

  按照前人的解释,cron是系统主要的调度进程,可以在非人工干预的情况下运行作业。crontab命令允许用户提交、编辑或删除相应的作业。简单来说,当我们需要让系统执行一个定时任务时,我们就会用到它,比如定时重启tomcat,或者定时调用一个jar包来执行某项功能等。

  其他详细、专业的介绍,请参考这里

二、Crontab设置

  1、查看当前用户的定时任务

  [[email protected] ~]$ crontab -l

  如果当前用户有定时任务,则会列出该用crontab文件里面的定时任务格式户的定时任务;如果没有,则会显示no crontab for root。

  2、编辑当前用户的定时任务

  [[email protected] ~]$ crontab -e

  执行该条命令之后,即可在编辑状态下编写所要执行定时任务的命令。

  如当我编写以下命令并保存之后,30 03 * * * /usr/local/tomcat/apache-tomcat-6.0.26/restart.sh

  成功则出现:crontab: installing new crontab。

  3、删除当前用户的定时任务

  [[email protected] ~]$ crontab -r

  4、cron服务的启动、关闭

  cron不会自动启动,需要通过以下命令来启动、关闭这个服务:

  crond start //启动服务

  crond stop //关闭服务

  crond restart //重启服务

  crond reload //重新载入配置

  5、crontab文件里面的定时任务格式

  59 23 * * * /home/oracle/scripts/alert_log_archive.sh >/dev/null 2>&1

  crontab 文件中每个条目中各个域的意义和格式:

  第一列 分钟:1——59

  第二列 小时:1——23(0表示子夜)

  第三列 日 :1——31

  第四列 月 :1——12

  第五列 星期:星期0——6(0表示星期天,1表示星期一、以此类推)

  第六列 要运行的命令

  我们暂且用C1、C2、C3、C4、C5、C6代表这六列,前面五列通过组合方式来决定执行脚本的频率,最小频率为每分钟执行一次,其中Cn可以用*、*/n、T1-T2、a,b,c四种形式来表示:

  当 C1 为 * 时表示每分钟都要执行脚本,C2 为 * 时表示每小时都要执行程式,依次类推.....

  当 C1 为 T1-T2 时表示从第 T1 分钟到第 T2 分钟这段时间内要执行,C2 为 T1-T2 时表示从第 T1 到第 T2 小时都要执行,依次类推....

  当 C1 为 */n 时表示每 n 分钟的时间间隔执行一次,C2 为 */n 表示每隔n小时的间隔执行一次,依次类推.....

  当 C1 为 a, b, c,... 时表示第 a, b, c,... 分钟要执行,C2 为 a, b, c,... 时表示第 a, b, c...个小时要执行,依次类推....

  下面列举几个例子供大家参考

  1: 59 23 * * * /home/oracle/scripts/alert_log_archive.sh >/dev/null 2>&1

  表示每天23点59分执行脚本/home/oracle/scripts/alert_log_archive.sh

  2: */5 * * * * /home/oracle/scripts/monitoring_alert_log.sh >/dev/null 2>&1

  表示每5分钟执行一次脚本/home/oracle/scripts/monitoring_alert_log.sh

  3: 0 20 * * 1-5 mail -s "**********" [email protected] < /tmp/maildata

  周一到周五每天下午 20:00 寄一封信给 [email protected]

时间: 2024-12-07 17:55:09

Crontab介绍的相关文章

Linux Crontab 定时任务 命令详解

在工作中需要数据库在每天零点自动备份所以需要建立一个定时任务.我选择在Linux下使用Crontab来添加定时任务执行shell文件.shell文件有数据库备份命令. 一.  Crontab 介绍          crontab命令的功能是在一定的时间间隔调度一些命令的执行. 二.查看/etc/crontab文件 vim  /etc/crontab 三.文件/etc/crontab中每行任务的描述格式如下: minute hour day month dayofweek command min

crontab命令详解

一. Crontab 介绍 1.crontab命令的功能是在一定的时间间隔调度一些命令的执行,我理解为windows下的任务计划. 2./etc/crontab 文件 在/etc目录下有一个crontab文件,这里存放有系统运行的一些调度程序,每个用户可以建立自己的调度crontab. 例如我服务器下的crontab内容 3./etc/cron.deny 和 /etc/cron.allow 文件 /etc/cron.deny 表示不能使用crontab 命令的用户/etc/cron.allow

CentOS 7 执行crontab 计划任务详情

1.crontab介绍 功能说明:设置计时器. 语 法:crontab [-u <用户名称>][配置文件] 或 crontab [-u <用户名称>][-elr] 补充说明:cron是一个常驻服务,它提供计时器的功能,让用户在特定的时间得以执行预设的指令或程序.只要用户会编辑计时器的配置文件,就可以使用计时器的功能. 配置文件格式:Minute Hour Day Month Day Of Week Command 参 数: -e:编辑该用户的计时器设置: -l:列出该用户的计时器设

crontab定时执行任务

第一部分 crontab介绍 每个操作系统都有它的自动定时启动程序的功能,Windows有它的任务计划,而Linux对应的功能是crontab. crontab简介 crontab命令常见于Unix和类Unix的操作系统之中,用于设置周期性被执行的指令.该命令从标准输入设备读取指令,并将其存放于“crontab”文件中,以供之后读取和执行.该词来源于希腊语 chronos(χρ?νος),原意是时间. 通常,crontab储存的指令被守护进程激活, crond常常在后台运行,每一分钟检查是否有预

crontab 例行任务

1.crontab 介绍 crontab是Linux用来定时执行任务的命令. 2.命令格式 crontab [-u user] file crontab [-u user] [-i] {-e | -l | -r } -e:编辑用户的 crontab 文件(针对用户) -l:列出用户的 crontab 文件 -r:删除用户的 crontab 文件 -i:删除用户的 crontab 文件前给出提示 -u:设定某个用户的cron服务,一般root用户在执行这个命令的时候需要此参数.如,root 用户要

定时任务crontab cron.d

一.cron.d增加定时任务 当我们要增加全局性的计划任务时,一种方式是直接修改/etc/crontab.但是,一般不建议这样做,/etc/cron.d目录就是为了解决这种问题而创建的. 例如,增加一项定时的备份任务,我们可以这样处理:在/etc/cron.d目录下新建文件backup.sh,内容如下: # m h dom mon dow user command * 1 * * * root /sbin/mon_zetc_logtar.sh cron进程执行时,就会自动扫描该目录下的所有文件,

Linux /etc/cron.d作用(转自 定时任务crontab cron.d)

原文链接:http://huangfuligang.blog.51cto.com/9181639/1608549 一.cron.d增加定时任务 当我们要增加全局性的计划任务时,一种方式是直接修改/etc/crontab.但是,一般不建议这样做,/etc/cron.d目录就是为了解决这种问题而创建的. 例如,增加一项定时的备份任务,我们可以这样处理:在/etc/cron.d目录下新建文件backup.sh,内容如下: # m h dom mon dow user command * 1 * * *

crontab说明

crontab介绍   crontab命令的功能是在一定的时间间隔调度一些命令的执行.当安装完操作系统之后,默认便会启动此任务调度命令.crontab命令每分钟会定期检查是否有要执行的工作,如果有要执行的工作便会自动执行该工作.使用权限 : 所有使用者 cron 服务每分钟不仅要读一次/var/spool/cron目录内的所有文件,还需要读一次/etc/crontab文件,因此我们配置这个文件也能运用cron服务做一些事情.用crontab配置是针对某个用户的,而编辑/etc/crontab是针

linux 计划任务(十)

[教程主题]: 计划任务 [1]at 在windows系统中,windows提供了计划任务这一功能,在控制面板 -< 性能与维护 -< 任务计划, 它的功能就是安排自动运行的任务. 通过'添加任务计划'的一步步引导,则可建立一个定时执行的任务. 在linux系统中你可能已经发现了为什么系统常常会自动的进行一些任务?这些任务到底是谁在支配他们工作的?在linux系统如果你想要让自己设计的备份程序可以自动在某个时间点开始在系统底下运行,而不需要手动来启动它,又该如何处置呢? 这些例行的工作可能又分