zoukankan      html  css  js  c++  java
  • crond任务调度

    crond是后台运行的一个程序

    作用:定时去调用命令完成工作
    crontab:进行定时任务的设置
    基本语法:
    crontab 选项
    常用选项:
    -e 编辑crontab定时任务
    -l 查询crontab任务
    -r 删除当前用户所有的crontab任务


    案例1:每隔一分钟执行以下指令ls -l /etc/ > /tmp/to.txt
    快速入门:
    设置任务调度:/etc/crontab
    设置个人任务调度,执行crontab -e 命令。
    接着输入任务到调度文件
    */1 * * * * ls -l /etc/ > /tmp/to.txt

    第一个*:一个小时当中的第几分钟 0-59
    第二个*:一天中的第几小时 0-23
    第三个*:一月中的第几天 1-31
    第四个*:一年当中的第几月 1-12
    第五个*:一周当中的星期几 0-7(0和7都代表周日)
    注意,第一个*和/1不空格,意思是每分钟都执行。其它的地方要空格

    特殊符号的说明:
    * 代表任何时间,比如第一个*就代表 一小时中每分钟都执行一次的意思
    , 代表不连续的时间 0 8,12,16 * * * 代表每天的8点0分,12点0分,16点0分都执行一次命令。
    - 代表连续的范围 0 5 * * 1-6 代表周一到周六的凌晨5点0分执行命令

    */n 代表多久执行一次 比如 */10 * * * * 命令代表每隔10分钟执行一次

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

    */1 * * * * date >> /tmp/mydate

    案例2:每隔一分钟,将当前的日期和日历都追加到/home/mycal文件中
    法1)
    */1 * * * * cal >> /home/mycal
    */1 * * * * date >> /home/mycal
    法2)写一个脚本,让crond去调用这个脚本就可以
    先vim写一个脚本/home/my.sh
    cal >> /home/mycal
    date >> /home/mycal
    再用chmod u+x /home/my.sh 去给用户增加执行权限(如果没有执行权限会失败)
    最后输入crontab -e 进入编辑模式,然后输入*/1 * * * * /home/my.sh(这个代表执行)

    案例3:每天凌晨2:00将MySQL数据库testdb ,备份到文件/home/db.bak中
    crontab -e
    0 2 * * * mysqldump -u root -p密码 数据库 > /home/db.bak

    重启任务调度service crond restart

  • 相关阅读:
    pickle模块
    json模块
    sys模块的介绍
    Java中char和String的处理问题
    javaweb学习 基础(三)Cookie Session
    javaweb学习 基础(二)httpservlet
    javaweb学习 基础(一)servlet day09-day10
    java学习 网络编程 tcp
    java学习 网络编程 ip,udp
    了解数据仓库
  • 原文地址:https://www.cnblogs.com/YXBLOGXYY/p/14277291.html
Copyright © 2011-2022 走看看