精华内容
下载资源
问答
  •  cron可以让系统在指定的时间,去执行某个指定的工作,我们可以使用crontab指令来管理cron机制 crontab参数  -u:这个参数可以让我们去编辑其他人的crontab,如果没有加上这个参数的话就会开启自己的crontab  ...

    cron机制
            cron可以让系统在指定的时间,去执行某个指定的工作,我们可以使用crontab指令来管理cron机制

    crontab参数
            -u:这个参数可以让我们去编辑其他人的crontab,如果没有加上这个参数的话就会开启自己的crontab
            crontab -u 使用者名称

            -l:可以列出crontab的内容

            -r:可以移除crontab

            -e:可以使用系统预设的编辑器,开启crontab

            -i:可以移除crontab,会跳出系统信息让你再次确定是否移除crontab

    crontab时间格式说明
            minute(分)可以设置0-59分

            hour(小时)可以设置0-23小时

            day of month(日期)可以设置1-31号

            month(月份):可以设置1-12月

            day of week(星期):可以设置0-7星期几,其中0和7都代表星期天,或者我们也可以使用名称来表示星期天到星期一,例如sun表示星期天,mon表示星期一等等

    crontab时间格式范例
        1-3表示123
        1-9/2表示13579

    crontab范例
        每五分钟执行  */5 * * * *

        每小时执行     0 * * * *

        每天执行        0 0 * * *

        每周执行       0 0 * * 0

        每月执行        0 0 1 * *

        每年执行       0 0 1 1 *

    设定cron的权限
            /etc/cron.allow
            /etc/cron.deny

            系统首先判断是否有cron.allow这个文件,如果有这个文件的话,系统会判断这个使用者有没有在cron.allow的名单里面,如果在名单里面的话,就可以使用cron机制。如果这个使用者没有在cron.allow名单里面的话,就不能使用cron机制。

             如果系统里面没有cron.allow这个文件的话,系统会再判断是否有cron.deny这个文件,如果有cron.deny这个文件的话,就会判断这个使用者有没有在cron.deny这个名单里面,如果这个使用者在cron.deny名单里面的话,将不能使用cron机制。如果这个使用者没有在cron.deny这个名单里面的话就可以使用cron机制。

            如果系统里这两个文件都没有的话,就可以使用cron机制

    介绍crontab文件
            /etc/crontab
            在这个文件里并没有记录系统要执行哪些工作,而是记录了下面四个子目录。
            /etc/cron.hourly
            /etc/cron.daily
            /etc/cron.weekly
            /etc/cron.monthly
            这些子目录里存放了一些脚本,到了crontab所指定的时间点,系统就会去执行这些子目录里的脚本。

    展开全文
  • cron机制 cron可以让系统在指定的时间,去执行某个指定的工作,我们可以使用crontab指令来管理cron机制crontab参数 -u:这个参数可以让我们去编辑其他人的crontab,如果没有加上这个参数的话就会开启自己的crontab ...

    cron机制
            cron可以让系统在指定的时间,去执行某个指定的工作,我们可以使用crontab指令来管理cron机制

    crontab参数
            -u:这个参数可以让我们去编辑其他人的crontab,如果没有加上这个参数的话就会开启自己的crontab
            crontab -u 使用者名称

            -l:可以列出crontab的内容

            -r:可以移除crontab

            -e:可以使用系统预设的编辑器,开启crontab

            -i:可以移除crontab,会跳出系统信息让你再次确定是否移除crontab

    crontab时间格式说明
            minute(分)可以设置0-59分

            hour(小时)可以设置0-23小时

            day of month(日期)可以设置1-31号

            month(月份):可以设置1-12月

            day of week(星期):可以设置0-7星期几,其中0和7都代表星期天,或者我们也可以使用名称来表示星期天到星期一,例如sun表示星期天,mon表示星期一等等

    crontab时间格式范例
        1-3表示123
        1-9/2表示13579

    crontab范例
        每五分钟执行  */5 * * * *

        每小时执行     0 * * * *

        每天执行        0 0 * * *

        每周执行       0 0 * * 0

        每月执行        0 0 1 * *

        每年执行       0 0 1 1 *

    设定cron的权限
            /etc/cron.allow
            /etc/cron.deny

            系统首先判断是否有cron.allow这个文件,如果有这个文件的话,系统会判断这个使用者有没有在cron.allow的名单里面,如果在名单里面的话,就可以使用cron机制。如果这个使用者没有在cron.allow名单里面的话,就不能使用cron机制。

             如果系统里面没有cron.allow这个文件的话,系统会再判断是否有cron.deny这个文件,如果有cron.deny这个文件的话,就会判断这个使用者有没有在cron.deny这个名单里面,如果这个使用者在cron.deny名单里面的话,将不能使用cron机制。如果这个使用者没有在cron.deny这个名单里面的话就可以使用cron机制。

            如果系统里这两个文件都没有的话,就可以使用cron机制

    介绍crontab文件
            /etc/crontab
            在这个文件里并没有记录系统要执行哪些工作,而是记录了下面四个子目录。
            /etc/cron.hourly
            /etc/cron.daily
            /etc/cron.weekly
            /etc/cron.monthly
            这些子目录里存放了一些脚本,到了crontab所指定的时间点,系统就会去执行这些子目录里的脚本。

    展开全文
  • 每小时执行 0 * * * * 每天执行 0 0 * * * 每周执行 0 0 * * 0 月执行 0 0 1 * * 每年执行 0 0 1 1 *   1.作用 使用crontab命令可以修改crontab配置文件,然后该配置由cr

    每五分钟执行  */5 * * * *

    每小时执行     0 * * * *

    每天执行        0 0 * * *

    每周执行       0 0 * * 0

    每月执行        0 0 1 * *

    每年执行       0 0 1 1 *

     




    1.作用


    使用crontab命令可以修改crontab配置文件,然后该配置由cron公用程序在适当的时间执行,该命令使用权限是所有用户。

    2.格式

    crontab [-u user] {-l | -r | -e}

    3.主要参数

    -e:执行文字编辑器来设定时程表,内空的文字编辑器是vi

    -r:删除目前的时程表

    -l列出目前的时程表。

    Crontab文件的格式为”M H D m d cmd”。其中,M代表分钟(0~59),H代表小时(0~23),D代表天(1~31),m代表月(1~12),d代表一星期内的天(0~6,0为星期天)。Cmd表示要运行的程序,它被送入sh执行,这个shell只有USER、HOME、SHELL三个环境变量。



    使用cron服务,用server crond status查看cron服务状态,如果没有启动则service crond start启动它,cron服务是一个定时执行的服务,可以通过crontab命令添加或编辑需要定时执行的任务:

    crontab –u //设定某个用户的cron服务,一般root用户在执行这个命令的时候需要此参数

    crontab –l //列出某个用户cron服务的详细内容

    crontab –r //删除某个用户的cron服务

    crontab –e //编辑某个用户的cron服务

    crontab filename //以filename作为crontab的任务列表文件并载入



    比如说root查看自己的cron设置:crontab –u root –l

    再例如,root想删除fred的cron设置:crontab –u fred –r

    在编辑cron服务时,编辑的内容有一些格式和约定,输入:crontab –u root –e

    进入vi编辑模式,编辑的内容一定要符合下面的格式:

    */1   *     *     *     *     ls >>/tmp/ls.txt

    编辑/etc/crontab文件,在末尾加上一行:30 5 * * * root init 6这样就将系统配置为每天早上5点30分自动重新启动。



    crontab 文件中的行由6个字段组成,不同字段间用空格或tab键分隔。前5个字段指定命令要运行的时间

    分钟(0-59)

    小时(0-23)

    日期(1-31)

    月份(1-12)

    星期几(0-6,其中0代表星期日,好像7也代表星期日)

    第6个字段是一个要在适当时间执行的字符串。

    例子:

    #MIN      HOUR     DAY       MONTH  DAYOFWEEK       COMMAND

    #每天早上6点10分

    10    6     *     *     *     date

    #每两个小时

    0     */2   *     *     *     date

    #晚上11点到早上8点之间每两个小时,早上8点

    0     23-7/2,8      *     *     *     date

    #每个月的4号和每个礼拜一到礼拜三的早上11点

    0     11    4     *     1-3  date

    #1月1日早上4点

    0     4     1     1       *  date

    补充:在使用crontab的时候,要特别注意的是运行脚本中能够访问到的环境变量和当前测试环境中环境变量未必一致,一个比较保险的做法是在运行的脚本程序中自行设置环境变量(export)

    (1)       先建一个文件crond.txt如下,每天早上5点36分重新启动

    36      5     *     *     *     reboot

    (2)上传到/opt目录

    (3)运行命令

    crontab /opt/crond.txt

    crontab –l

    让配置文件生效:如果让配置文件生效,还得重新启动cron,切记,既然每个用户下的cron配置文件修改后,也要重新启动cron服务器。



    在Fedora和Redhat中,我们应该用:

    /etc/rc.d/crond restart

    如果让crond在开机时运行,应该改变其运行级别:

    chkconfig –level 35 crond on
    service crond status查看cron服务状态,如果没有启动则service crond start启动它,cron服务是一个定时执行的服务,可以通过crontab命令添加或者编辑需要定时执行的任务
    展开全文
  • 第2列小时1~23(0表示子夜) 第3列日1~31 第4列月1~12 第5列星期0~6(0表示星期天) 第6列要运行的命令 文件中是通过 5 个“*”来确定命令或任务的执行时间的,这 5 个“*”的具体含义如表 2 所示。 表 2...

    下面是crontab的格式:
    分  时  日  月  星期  要运行的命令

    第1列分钟1~59
    第2列小时1~23(0表示子夜)
    第3列日1~31
    第4列月1~12
    第5列星期0~6(0表示星期天)
    第6列要运行的命令

    文件中是通过 5 个“*”来确定命令或任务的执行时间的,这 5 个“*”的具体含义如表 2 所示。
     

     

    表 2 crontab 时间表示
    项目含义范围
    第一个"*"一小时当中的第几分钟(minute)0~59
    第二个"*"一天当中的第几小时(hour)0~23
    第三个"*"一个月当中的第几天(day)1~31
    第四个"*"一年当中的第几个月(month)1~12
    第五个"*"一周当中的星期几(week)0~7(0和7都代表星期日)


    在时间表示中,还有一些特殊符号需要学习,如表 3 所示。
     

    表 3 时间特殊符号
    特殊符号含义
    *(星号)代表任何时间。比如第一个"*"就代表一小时种每分钟都执行一次的意思。
    ,(逗号)代表不连续的时间。比如"0 8,12,16***命令"就代表在每天的 8 点 0 分、12 点 0 分、16 点 0 分都执行一次命令。
    -(中杠)代表连续的时间范围。比如"0 5 ** 1-6命令",代表在周一到周六的凌晨 5 点 0 分执行命令。
    /(正斜线)代表每隔多久执行一次。比如"*/10****命令",代表每隔 10 分钟就执行一次命令。


    当“crontab -e”编辑完成之后,一旦保存退出,那么这个定时任务实际就会写入 /var/spool/cron/ 目录中,每个用户的定时任务用自己的用户名进行区分。而且 crontab 命令只要保存就会生效,只要 crond 服务是启动的。知道了这 5 个时间字段的含义,我们多举几个时间的例子来熟悉一下时间字段,如表 4 所示。
     

    表 4 crontab举例
    时间含义
    45 22 ***命令在 22 点 45 分执行命令
    0 17 ** 1命令在每周一的 17 点 0 分执行命令
    0 5 1,15**命令在每月 1 日和 15 日的凌晨 5 点 0 分执行命令
    40 4 ** 1-5命令在每周一到周五的凌晨 4 点 40 分执行命令
    */10 4 ***命令在每天的凌晨 4 点,每隔 10 分钟执行一次命令
    0 0 1,15 * 1命令在每月 1 日和 15 日,每周一个 0 点 0 分都会执行命令,注意:星期几和几日最好不要同时出现,因为它们定义的都是天,非常容易让管理员混淆

    在运维工作中,经常用到定时任务,无论是shell脚本还是DBM JOB定时任务都是自动化必不可少的任务。之前在一个定时执行文件查找的程序中使用了crontab任务,开始的频率是整点每隔1小时执行一次,后来将其按规律改成2小时执行1次后,发现并不生效,依然是1小时执行一次的结果,参考网上和自己的测试,总算正常,现在将此例子记录一下,并顺便再延伸一些关于定时任务的内容。

    1.脚本整点每1小时执行一次

    #每隔1小时即60分钟执行一次
    */60 * * * * . /home/jzcj/user/zhf/Ndata1/jzcj1Ndata1.sh 1>/dev/null 2>/dev/null
    #修改每隔2小时即120分钟执行一次,结果并未生效???
    */120 * * * * . /home/jzcj/user/zhf/Ndata1/jzcj1Ndata1.sh 1>/dev/null 2>/dev/null

    每隔一小时执行一次 生效:注意是从整点开始的

    2.整点每隔2小时执行一次

    #每隔2小时执行一次脚本
    0 */2 * * * . /home/jzcj/user/zhf/Ndata1/jzcj1Ndata1.sh 1>/dev/null 2>/dev/null

    样例1

    30 21 * * * /usr/local/etc/rc.d/lighttpd restart
    上面的样例表示每晚的21:30重新启动apache。

    45 4 1,10,22 * * /usr/local/etc/rc.d/lighttpd restart
    上面的样例表示每月1、10、22日的4 : 45重新启动apache。

    10 1 * * 6,0 /usr/local/etc/rc.d/lighttpd restart
    上面的样例表示每周六、周日的1 : 10重新启动apache。

    0,30 18-23 * * * /usr/local/etc/rc.d/lighttpd restart
    上面的样例表示在每天18 : 00至23 : 00之间每隔30分钟重新启动apache。

    0 23 * * 6 /usr/local/etc/rc.d/lighttpd restart
    上面的样例表示每星期六的11 : 00 pm重新启动apache。

    * */1 * * * /usr/local/etc/rc.d/lighttpd restart
    每一小时重新启动apache

    * 23-7/1 * * * /usr/local/etc/rc.d/lighttpd restart
    晚上11点到早上7点之间,每隔一小时重新启动apache

    0 11 4 * mon-wed /usr/local/etc/rc.d/lighttpd restart
    每月的4号与每周一到周三的11点重新启动apache

    0 4 1 jan * /usr/local/etc/rc.d/lighttpd restart
    一月一号的4点重新启动apache

    样例2

    #每天早上7点运行一次 /bin/ls :

    0 7 * * * /bin/ls

    在 12 月内, 每天的早上 6 点到 12 点中,每隔3个小时运行一次 /usr/bin/backup :

    0 6-12/3 * 12 * /usr/bin/backup

    周一到周五每天下午 5:00 寄一封信给 alex@domain.name :

    0 17 * * 1-5 mail -s "hi" alex@domain.name < /tmp/maildata

    每月每天的午夜 0 点 20 分, 2 点 20 分, 4 点 20 分....运行 echo "haha"

    20 0-23/2 * * * echo "haha"

    样例3

    #每天早上6点10分

    10 6 * * * date

    #每两个小时

    0 */2 * * * date

    #晚上11点到早上8点之间每两个小时,早上8点

    0 23-7/2,8 * * * date

    #每一个月的4号和每一个礼拜的礼拜一到礼拜三的早上11点

    0 11 4 * mon-wed date

    #1月份日早上4点

    0 4 1 jan * date

    范例

    $crontab -l 列出用户眼下的crontab.

     

    展开全文
  • 下面是 crontab 的格式: 分 时 日 月 星期 要运行的命令 第 1 列分钟 1~59 第 2 列小时 1~23(0 表示子夜) 第 3 列日 1~31 第 4 列月 1~12 第 5 列星期 0~6(0 表示星期天) 第 6 列要运行的命令 在运维工作...
  • 个月的 28 日 00:00:00 运行 ...每小时执行一次(整点整分) cron = "0 0 * * * ?" 每周晚上 21:00 执行 0 21 * * 4 Cron表达式生成器 http://www.pdtools.net/tools/becron.jsp ...
  • crontab

    2021-04-01 10:08:47
    查看root用户定时任务 crontab -l 删除root用户所有任务 crontab -r ...12小时执行1次 0 */12 * * * ##crontab服务 systemctl start crond //启动服务 systemctl stop crond //停止服务 systemctl restart crond //重
  • 每小时执行 0 * * * * /bin/php /www/web/test.php 每天执行 0 0 * * * /bin/php /www/web/test.php 每周执行 0 0 * * 0 /bin/php /www/web/test.php 月执行 0 0 1 * * /bin/php /www/web/test.php ...
  • cron和crontab命令详解 crontab 分钟、每小时、每天、每周、月、每年定时执行 crontab每5分钟执行一次 cron机制 cron可以让系统在指定的时间,去执行某个指定的工作,我们可以使用crontab指令来管理cron机制 ...
  • Crontab

    2020-05-20 23:49:48
    另外, 由于用户自己也可以设置计划任务,所以,Linux 系统也提供了使用者控制计划任务的命令 :crontab 命令。crond 是linux下用来周期性的执行某种任务或等待处理某些事件的一个守护进程,与windows下的计划任务类似...
  • CRONTAB

    2017-04-28 14:50:00
    CRONTAB概念/介绍 crontab命令用于设置周期性被执行的指令。该命令从标准输入设备读取指令,并将其存放于“crontab”文件中,以供之后读取和执行。 cron 系统调度进程。 可以使用它在每天的非高峰负荷时间段运行...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 32,453
精华内容 12,981
关键字:

crontab每四小时