zoukankan      html  css  js  c++  java
  • linux全套 | crond任务调度 | 09

    概述

    cronttab进行定时任务的设置. cron是希腊语时间的意思,tab是表格的意思,组合起来就是时间表.

    任务调度: 是指系统在某个时间执行的特定的命令或程序.

    任务调度分类:

    (1) 系统工作: 有些重要的工作必须周而复始地执行. 如病毒扫描等

    (2) 个别用户工作: 个别用户可能希望执行某些程序,比如对mysql数据库的备份.

    基本语法

    crontab [选项]

    -e: 编辑crontab定时任务

    -l: 查询crontab任务

    -r: 删除当前用户所有的crontab任务

    快速入门

    每分钟输出一个时间在/home/to.txt

    crontab -e
    * date >> /home/to.txt
    
    

    参数说明

    占位符说明

    特殊符号说明

    特定时间执行任务案例

    (1) 在22点45分执行命令

    45 22 * * * 命令

    (2) 每周1的17点0分执行命令

    0 17 * * 1 命令

    (3) 每月1号和15号的凌晨5点0分执行命令

    0 5 1,15 * * 命令

    (4) 每周一到周五的凌晨4点40分执行命令

    40 4 * * 1-5 命令

    (5) 每天的凌晨4点,每隔10分钟执行依次命令

    */10 4 * * * 命令

    (6) 每月1号和15号,每周1的0点0分都会执行命令

    0 0 1,15 * 1 命令

    任务调度的几个应用实例

    案例1: 每隔1分钟,就将当前的日期信息,追加到/tmp/mydate文件中

    1. 向编写一个文件: /home/mytask1.sh, 内容为data >> /tmp/mydate

    2. /home/mytask1.sh一个可执行权限 ,chmod 755 /home/mytask1.sh

    3. crontab -e

    4. */1 * * * * /home/mytask1.sh

    案例2: 每隔1分钟,将当前日期和日历都追加到/home/mycal文件中

    #!/bin/bash
    # mytask02.sh
    date >> /home/mycal
    cal >> /home/mycal
    

    案例3: 每天凌晨2:00将mysql数据库testdb,备份到文件中mydb.bak

    #!/bin/bash
    # mytask03.sh
    0 2 * * * /usr/local/mysql/bin/mysqldump -uroot -proot testdb > /tmp/mydb.bak
    
  • 相关阅读:
    httpclient用法
    JS逻辑运算符&&与||的妙用
    jackson详解
    MVC +EF+linq 多表联查
    Log4net 集成到MVC+EF框架
    Asp.net中的页面跳转及post数据
    字符串的分割操作
    线程的信号机制
    事件的标准模式
    Java网络编程
  • 原文地址:https://www.cnblogs.com/Rowry/p/12961153.html
Copyright © 2011-2022 走看看