1. crond 是Linux下用周期性的执行某种任务或者等待处理某些事件的一个守护进程,crond 进程会每分钟定期检查是否有要执行的任务,如果有要执行的任务则自动执行该任务

  2. Linux 下的任务调度

    1. 系统任务调度:系统周期性所要执行的工作,如:写缓存数据到硬盘、清理日志等。系统任务调度的配置文件 /etc/crontab
    2. 用户任务调度:用户定期要执行的工作,比如数据库备份、定时邮件提醒等。所有用户定义的crontab文件都保存在/var/spool/cron目录中。文件名与用户名一致。
  3. crontab 文件的含义

    用户所建立的crontab文件中,每一行代表一项任务,每行的每个字段代表一项设置,共分六个字段,前五段是时间设定段,第六段是要执行的命令段

    minute hour day month week command

     	在以上各个字段中,还可以使用以下特殊字符:
    
     	星号(*):代表所有可能的值,例如month字段如果是星号,则表示在满足其它字段的制约条件后每月都执行该命令操作。
    
     	逗号(,):可以用逗号隔开的值指定一个列表范围,例如,“1,2,5,7,8,9”
    
     	中杠(-):可以用整数之间的中杠表示一个整数范围,例如“2-6”表示“2,3,4,5,6”
    
     	正斜线(/):可以用正斜线指定时间的间隔频率,例如“0-23/2”表示每两小时执行一次。同时正斜线可以和星号一起使用,例如*/10,如果用在minute字段,表示每十分钟执行一次
  4. crontab 服务

    1. service cron start //启动服务
    2. service cron stop //关闭服务
    3. service cron restart //重启服务
    4. service cron reload //重新载入配置
    5. service cron status //查看服务状态
  5. 查看服务是否已经运行用 ps -ax | grep cron

  6. crontab命令选项:

    1. -u指定一个用户
    2. -l列出某个用户的任务计划
    3. -r删除某个用户的任务
    4. -e编辑某个用户的任务
  7. 新增任务调度

    1. 在命令行输入: crontab -e 然后添加相应的任务,wq存盘退出。
    2. 直接编辑/etc/crontab 文件,即vi /etc/crontab,添加相应的任务。
  8. 查看任务调度

    crontab -l //列出当前的所有调度任务
    crontab -l -u jp //列出用户jp的所有调度任务
  9. 删除任务调度

    crontab -r   //删除所有任务调度工作
  10. 利用任务调度执行Shell脚本,在Shell脚本中执行PHP文件,可以做到每秒执行一次PHP文件

    1. 假设脚本为 aaa.sh (一定要给该文件可执行的权限) 内容为:

      #!/bin/bash
      int=1
      while(( $int<=60 ))
      do
      php /var/www/html/index.php
      echo $int
      let "int++"
      sleep 1
      done
    2. PHP文件(如果执行不成功可以尝试给该文件授权为755) 内容为:

      <?php
      echo "this is zhuchenglin's website!";
    3. 执行如下命令:

      1. sudo corntab -e 编辑定时任务

        内容,加上下面内容(里面是绝对路径):

        * * * * * sh /var/www/html/aaa.sh >> /var/www/html/crontab.log
        #后面将输出的内容重定向到日志文件中是为了看定时任务是否执行
      2. 编辑好后,保存并退出

      3. 重启cron服务

        service cron restart
      4. 过大概一分钟后查看日志文件内是否有内容 (尽量给该日志文件足够的权限)

        cat /var/www/html/crontab.log

注:本文参考:Linux定时任务crontab命令详解linux定时任务的设置 crontab 配置指南

如需转载请注明出处:http://www.cnblogs.com/zhuchenglin/p/8758444.html

Linux 定时任务调度(crontab命令)的更多相关文章

  1. linux定时任务调度定系统——opencron

    linux定时任务调度定系统——opencron https://gitee.com/terrytan/opencron/#%E8%BF%90%E8%A1%8C%E7%8E%AF%E5%A2%83 一 ...

  2. linux定时任务:crontab命令

    crontab命令被用来提交和管理用户的需要周期性执行的任务,与windows下的计划任务类似,当安装完成操作系统后,默认会安装此服务工具,并且会自动启动crond进程,crond进程每分钟会定期检查 ...

  3. Linux定时执行任务命令概述:at和crontab

    本文介绍在Linux下的两种定时执行任务的方法:at命令,以及crontab服务. (1)at命令 假如我们只是想要让特定任务运行一次,那么,这时候就要用到at监控程序了. 设置at命令很简单,指示定 ...

  4. 转 Linux定时执行任务命令at和crontab

    本文介绍在Linux下的两种定时执行任务的方法:at命令,以及crontab服务. (1)at命令 假如我们只是想要让特定任务运行一次,那么,这时候就要用到at监控程序了. 设置at命令很简单,指示定 ...

  5. Linux中使用crontab命令定时执行shell脚本或其他Linux命令

    使用crontab你可以在指定的时间执行一个shell脚本或者一系列Linux命令.例如系统管理员安排一个备份任务使其每天都运行 如何往 cron 中添加一个作业? # crontab –e0 5 * ...

  6. Linux 设置定时任务crontab命令

    1.  crontab命令概念 crontab命令用于设置周期性被执行的指令.该命令从标准输入设备读取指令,并将其存放于“crontab”文件中,以供之后读取和执行. cron 系统调度进程. 可以使 ...

  7. Linux中的crontab命令用法

    Crontab 在linux中,crontab的用来设置定期执行指定的命令,我们可以用它来指定一些需要重复的事情,Linux系统的用户只需将想要定期要执行的命令序列加到crontab文件中,操作系统即 ...

  8. Linux -定时任务调度

    l crond 任务调度   crontab 进行定时任务的设置,. 概述 任务调度:是指系统在某个时间执行的特定的命令或程序. 任务调度分类:1.系统工作:有些重要的工作必须周而复始地执行.如病毒扫 ...

  9. Linux新手学堂 Crontab命令的语法

    crontab 命令的用途就是:提交.编辑.列出或除去 cron 作业. 语法 crontab [ -e [UserName] | -l [UserName] | -r [UserName] | -v ...

随机推荐

  1. 轴对称 Navier-Stokes 方程组的一个点态正则性准则

    对轴对称 NSE, 我们改进了 [Pan, Xinghong. A regularity condition of 3d axisymmetric Navier-Stokes equations. A ...

  2. [物理学与PDEs]第4章第3节 一维反应流体力学方程组 3.3 一维反应流体力学方程组的数学结构

    一维理想反应流体力学方程组是一阶拟线性双曲组.

  3. sqlserver 生成脚本执行创建索引

    create or alter proc SP_CreateIndex as begin if exists(select * from sys.objects where name='execsql ...

  4. Python 入门基础14 --time、os、random、json、pickle 常用模块1

    今日内容: 一.常用模块 2019.04.10 更新 1.time:时间 2.calendar:日历 3.datetime:可以运算的时间 4.sys:系统 5.os:操作系统 6.os.path:系 ...

  5. 整理一下C++语言中的头文件

    对于每一个像我一样的蒟蒻来说,C++最重要的东西就是头文件的使用了.由于初学,直到现在我打代码还是靠一些事先写好的的头文件,仍然不能做到使用自己需要的.最近看了几位大佬打代码,心中突然闪过要把自己冗长 ...

  6. django2.0无法加载外部css和js的问题

    解决问题的思路来源于https://www.v2ex.com/t/430192 先是创建static目录,该目录与manage.py同级 然后在项目settings.py文件里添加 STATICFIL ...

  7. easyui系列一 下拉框之组合框combobox

    一.基础组合框 示例 <select class="easyui-combobox" name="state" style="width:200 ...

  8. JS基础之传参(值传递、对象传递)

    一.概念 我们需了解什么是按值传递(call by value),什么是按引用传递(call by reference).在计算机科学里,这个部分叫求值策略(Evaluation Strategy). ...

  9. SpringMVC+Spring+Hibernate整合开发

    最近突然想认真研究下java web常用框架,虽然现在一直在用,但实现的整体流程不是很了解,就在网上搜索资料,尝试自己搭建,以下是自己的搭建及测试过程. 一.准备工作: 1/安装并配置java运行环境 ...

  10. 【原创】大叔算法分享(5)聚类算法DBSCAN

    一 简介 DBSCAN:Density-based spatial clustering of applications with noise is a data clustering algorit ...