Linux任务计划

1、at —— 在未来某个时间点执行一次某任务

    使用实例:

        at 时间:设定某个时间点

        at>COMMAND

        at>Ctrl+d

    指定时间:

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

        相对时间:now+3minutes

            单位:minutes、hours、days、weeks

        模糊时间:noon,midnight,teatime

    命令的执行结果:以邮件的形式发送给安排任务的用户

    显示jobs列表:atq = at -l

    删除jobs任务:atrm = at -d jobs号

2、crontab —— 周期性执行某任务

    cron:自身是一个不间断运行的服务

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


    cron:

        系统cron任务:/etc/crontab

            分 时 日 月 周 用户 任务

        用户cron任务:/var/spool/cron/USERNAME

            分 时 日 月 周 任务

        时间的有效取值:

            分:0-59

            时:0-23

            日:1-31

            月:1-12

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


        时间通配表示:

            *:对应的所有有效取值

                3 * * * *:每小时的3分执行一次

                13 12 * * *:每天的12点13分执行一次

            , :离散时间点:

                10,40 * * * *:每小时的10分和40分执行一次(半小时执行一次)

            - :连续时间点:

                10 02 * * 1-5:每周的周一到周五的2点10分执行

            / :对应取值范围内每多久执行一次

                    */3 * * * *:每三分钟执行一次


            example:

                每两小时执行一次:01 */2 * * *

                每两天执行一次:01 02 */2 * *

                注:第一条分钟必须给具体值,第二条分钟和时必须给具体值


        注:cron执行所有命令都去PATH环境变量指定的路径下去找,在cron任务里应写绝对路径,脚本应定义PATH。


        用户任务的管理:

            crontab

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

                -e:编辑

                -r:移除所有任务

                -u USERNAME:管理其他用户的cron任务


郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。