zoukankan      html  css  js  c++  java
  • 系统定时任务crond

    1、Linux的定时任务:crond(crontab)服务

    (1)crond 是什么?

      crond 是 linux 系统中用来定期执行命令或者指定程序任务的一种服务和软件;crond 服务默认情况(每分钟),会检查系统中是否有需要执行的定时任务,如果有,就会根据事先定义好的规则来执行这个定时任务。crond 的定时任务就相当于生活中哦闹钟一样。

      tail  -f   实时查看一个文件的内容。

      ps  查看进程  常用 -ef  -aux

      ①Linux 的系统自身定期执行的任务

        系统自身定时任务存在位置:

        

       ②用户执行的定时任务

    (2)定时任务分类  

      at       适合执行一次就结束的调度任务;突发性的任务,例如某天晚上。依赖服务atd。了解

      anacron  适合于 7*24 小时开机的服务器准备,开机执行的。检测停机期间没有执行的任务,在开机后一次性执行一遍。了解

      crond    **系统中用来定期执行命令或者指定程序任务的一种服务和软件;

                crond 依赖的服务就是 crond;crond 是一个定时任务守护进程,而 crontab 是用户用来设置定时任务规则的命令。几乎每个服务器都需用到 crond

    2、crontab 命令

      -l  查看 crontab 文件内容,list 列表**

          crondtab  -l  == cat /var/spool/cron/..

      -e    编辑 crontab 文件内容**

         crontab -e  == vim /var/spool/cron/..

      -r  删除 crontab 文件内容,用的很少

      -u  指定使用的用户执行任务

      -i    提示确认

    3、定时任务书写格式

      crontab 定时任务,用户的定时任务规则一般分为6个段(每个段通过空格来分隔,系统的定时任务为 /etc/crontab,分为7段,空格来分隔);前5段为时间的设定段,第6段为所要执行的命令或脚本任务段。

      基本格式:

       01 * * * * cmd

       02 4 * * * cmd

       22 4 * * 0 cmd

       12 4 1 * * cmd

       cmd 为要执行的命令或脚本,例如 /bin/sh test.sh

      

         分时日月周

      *  表示任意时间"都",实际就是"每"的意思。

      -  表示时间的一个范围,例如每天 17-19 点。 00 17-19 * * * cmd,就是17,18,19点整点分别执行的意思。

      ,  表示分隔时段的意思,30 17,18,19 * * * /bin/sh test.sh  每天的17:30、18:30、19:30都执行 test.sh 脚本,和 - 的表示方法差不多。

      /n  n 代表数字,即“每隔 n 单位时间”;例如,每10分钟执行一次任务可以写成 */10 * * * * cmd,也可以写成 0-59/10。

      例:每分钟都将 myname 写入 /server/a.log 文件中。* * * * * 表示的就是每分钟

      ①使用 crontab -e 回车写入执行的命令

      

       ②使用 tail 命令实时查看文件。

      

  • 相关阅读:
    ASP.NET2.0中创建自定义配置节处理程序(声明性模型) joe
    .Net3.0里的DependencyProperty(1) joe
    详解Javascript匿名函数的使用(转) joe
    Mark:未能启用约束。一行或多行中包含违反非空、唯一或外键约束的值 joe
    设置windows 7 默认登陆帐户 joe
    数据库的回滚
    关于软件开发人员如何提高自己的软件专业技术方面的具体建议
    查询表结构
    readonly 和 const总结
    深入NHibernate映射
  • 原文地址:https://www.cnblogs.com/wqs-Time/p/11636449.html
Copyright © 2011-2022 走看看