Crontab

作者: 第八区 | 来源:发表于2017-06-15 17:41 被阅读18次

    cron 是一个可以用来根据时间、日期、月份、星期的组合来调度对重复任务的执行的守护进程。cron 假定系统持续运行。如果当某任务被调度时系统不在运行,该任务就不会被执行。要使用 cron 服务,你必须安装了 vixie-cron RPM 软件包,而且必须在运行crond 服务。要判定该软件包是否已安装,使用 rpm -q vixie-cron 命令。要判定该服务是否在运行,使用 /sbin/service crond status 命令。

    安装

    • yum install vixie-cron cron的主程序;
    • yum install crontabs 安装、卸装、或列举用来驱动 cron 守护进程的表格的程序

    基本命令和配置

    • /sbin/service crond start //启动服务
    • /sbin/service crond stop //关闭服务
    • /sbin/service crond restart //重启服务
    • /sbin/service crond reload //重新载入配置
    • 查看crontab服务是否已设置为开机启动,执行命令:ntsysv
    • chkconfig --level 35 crond on 加入开机自动启动
    • crontab -l 列出当前的crontab任务
    • crontab -d 删除当前的crontab任务
    • crontab -e (solaris5.8上面是 crontab -r) 编辑一个crontab任务,执行后就会在/var/spool/cron/下面创建对应用户的文件
    • crontab filename 以filename做为crontab的任务列表文件并载入

    格式

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

    分钟 (0-59)
    小时 (0-23) 0表示0点
    日期 (1-31)
    月份 (1-12)
    星期几(0-6,其中 0 代表星期日)
    执行的字符串

    例子

    • 每天早上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"

    注意

    当程序在你所指定的时间执行后,系统会寄一封信给你,显示该程序执行的内容,若是你不希望收到这样的信,请在每一行空一格之

    后加上 > /dev/null 2>&1 即可

    相关文章

      网友评论

          本文标题:Crontab

          本文链接:https://www.haomeiwen.com/subject/gvjuqxtx.html