crond任务调度

1 原理示意图

crontab 进行 定时任务的设置


2 概述

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

任务调度分类:1. 系统工作:有些重要的工作必须周而复始的执行。如病毒扫描等

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

3 基本语法

crontab [选项]

3.1 常用选项

-e 编辑crontab定时任务
-l 查询crontab任务
-r 删除当前用户所有的crontab任务

4 快速入门

4.1 任务的要求

设置任务调度文件:/etc/crontab

设置个人任务调度。执行crontab -e 命令

接着输入任务到调度文件

如: /1 * * * ls -l /etc/>/tmp/to.txt

意思说每小时的每分钟执行ls -l /etc/> /tmp/to.txt 命令

4.2 步骤如下

1)cron -e

2) /1 * * * ls -l /etc >> /tmp/to.txt

3) 当保存退出后就程序。

4)在每一分钟都会自动的调用 ls -l /etc >> /tmp/to.txt

4.3 参数细节说明

5个占位符的说明

项目 含义 范围
第一个‘*’ 一个小时当中的第几分钟 0-59
第二个‘*’ 一天当中的第几小时 0-23
第三个‘*’ 一个月当中的第几天 1-31
第四个‘*’ 一年当中的第几月 1-12
第五个‘*’ 一周当中的星期几 0-7

特殊符号的说明

特殊符号 含义
* 代表任何时间,比如一个"*"就代表一个小时中每分钟都执行一次的意思
代表不连续的时间。比如”0 8,12,16 * * * 命令“,就代表每天的8点0分,12点0分16点0分都执行一次命令
- 代表连续的时间范围。比如”0 5 * * 1-6 命令“,代表在周一到周五的凌晨5点0分执行命令
*/n 代表每个多久执行一次。比如”/10 * * * “代表每隔10分钟就执行一遍命令

特定时间执行任务案例

时间 定义
45 22 * * * 命令 在22点45分执行命令
0 17 * * 1 命令 在每周1的17点0分执行命令
0 5 1,15 * * 命令 每月1号和15号的凌晨5点执行命令
/10 4 * * 命令 每天凌晨4点,每隔10分钟执行一次命令
0 0 1,15 * 1 命令 每个月的1号和15号,每周1的0点0分都会执行命令。
注意:星期几和几号最好不要同时 出现,因为他们定义的都是天。
非常容易让管理员混乱。

5 任务调度的几个应用实例

5.1 案例一:

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

1)先编写一个文件 /home/mytask1.sh

2)给mytaskl.sh 一个可以执行的权限

chomd 744 /home/mytask1.sh

3)crontab -e

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

5)成功

5.2 案例二 :

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

1)先编写一个文件 /home/mytask2.sh

date >> /tmp/mycal

cal>> /tmp/mycal

2)给mytask1.sh 一个可以执行权限

chomd 744 /home/mytask2.sh

3) crontab -e

4) /1 * * * /home/mytask2.sh

5)成功

5.3 案例三:

每天凌晨2:00 将mysql 数据库testdb ,备份到mydb.bak

1)先编写一个文件 /home/mytask3.sh

/usr/local/mysql/bin/mysqldump -u root -proot testdb > /tmp/mydb.bak

2)给mytask3.sh 一个可以执行权限

chomd 744 /home/mytask3.sh

3)crontab -e

4)0 2 * * * /home/mytask3.sh

5)成功

6 crond 相关指令

1)crontab -r :终止任务调度

2) crontab - l:列出当前有哪些任务调度

3)service crond restart 【重启任务调度】

最新文章

  1. ThinkPHP实现定时任务
  2. VC++ 对话框程序响应键盘消息的处理方法的说明(非常重要)
  3. JavaWeb的学习之Servlet(转载自孤傲苍狼)
  4. C#实现WebService服务 项目完整总结
  5. BZOJ1030——文本生成器
  6. Bugzilla说明
  7. logstash使用操作部分
  8. ORACLE 监听日志文件太大停止写监听日志引起数据库连接不上问题
  9. 如何在asp.net中获取GridView隐藏列的值?
  10. SDP平台操作视频
  11. codis3.1集群搭建
  12. php生成批次唯一code(转)
  13. C#初步接触
  14. erlang erl文件编译的三种脚本
  15. FFT模板(BZOJ2179)
  16. adformsctl.sh 与 adformsrvctl.sh, 10.1.2 及10.1.3
  17. 分析web.xml
  18. Flutter之Decoration(边框、圆角、阴影、形状、渐变、背景图像等)
  19. mpvue——修改第三方组件样式
  20. yum安装时rpmdb损坏解决方法

热门文章

  1. ACM-ICPC 2018 沈阳赛区网络预赛-B,F,G
  2. ggplot2在一幅图上画两条曲线
  3. fasttext的基本使用 java 、python为例子
  4. 4、postman的常见断言
  5. 3.1_springboot2.x检索之elasticsearch安装&快速入门
  6. 《转》python 11 表达式和语句
  7. 【POJ】3660 Cow Contest
  8. 纯css写带小三角对话框
  9. wxid 转微信号
  10. 6.RDD算子实战