crontab入门及进阶学习笔记
crontab不是通常意义下的linux指令,它更是一个配置工具。通过这个工具,我们可以为系统定制固定周期的任务。
1、crond和crontab
1) crond:cron服务的守护进程,用于定期调度。
2) crontab:cron提供的UI,用于编辑调度计划。
2、crontab指令:
crontab –e:编辑已有定期调度任务,注意:该指令会启动vi编辑器进行任务编辑。
crontab –l:显示已有定期调度任务。
3、cron任务格式:
使用crontab –e编辑定期调度任务时,实际上可以理解为编辑一个配置文件,通过这个文件定义要执行哪些定期任务,执行的周期如何。
编辑过程可以理解为:进入vi编辑界面,以一个工作代表一行来编辑,然后输入“:wq”保存即可。每项工作(每行)具有六个字段,各字段意义如下表所示,六个字段依次表示分钟、小时、天、月、周和要执行的shell命令。
|
代表意义 |
分钟 |
小时 |
日期 |
月份 |
周 |
指令 |
|
数字范围 |
0-59 |
0-23 |
1-31 |
1-12 |
0-7 |
指令 |
4、特殊字符的使用:
cron任务中,有时需要设置较为复杂的任务处理逻辑,此时可能会用到如下特殊字符:
|
特殊字符 |
代表意义 |
|
*(星号) |
代表任何时候都接受。例如:30 10 * * * command中,day,month和week均为“*”,表示无论哪一天、哪个月、周几,都在10点30分执行命令。 |
|
,(逗号) |
代表多个并列时间。例如:* 3,6,9,12 * * * command,表示在3点,6点,9点或12点,执行命令。 |
|
-(减号) |
代表连续区间。例如:* 9-17 * * * command,表示从9点到17点,每一分钟都要执行这个任务。 |
|
/n(斜线) |
代表每隔n个单位之间。例如:*/5 * * * * command,其中用*与/5来搭配,表示每隔5分钟执行指令;也可以写成 0-59/5 ,作用相同。 |
5、举例:
# 每周五17点整,提醒所有组员发周报:
>crontab –e #进入编辑界面
0 17 * * 5 mail all_members < weekily_report_notify
#每周一00:30统计上周的服务器使用情况,结果保存到以日期命名的文件:
>crontab –e #进入编辑界面
30 0 * * 1 /home/get_server_usage.sh> server_usage_`date +"\%Y\%m\%d"`.txt
#注意其中%的处理,需要在前面加反斜杠\进行转义。
6、注意事项:
P.S.: crontab命令中的待执行脚本最好使用绝对路径。
P.S.: “周”这一栏中0和7都代表周日。
P.S.: cron调度的最小频率为1分钟。
P.S.: 每个月的最后一日无法由crontab直接支持,需要通过脚本判断。
P.S.:如果crontab运行出错,可以查看日志文件/var/log/syslog,追溯问题。
crontab入门及进阶学习笔记的更多相关文章
- ROS进阶学习笔记(11)- Turtlebot Navigation and SLAM - ROSMapModify - ROS地图修改
ROS进阶学习笔记(11)- Turtlebot Navigation and SLAM - 2 - MapModify地图修改 We can use gmapping model to genera ...
- 爱了!阿里大神最佳总结“Flutter进阶学习笔记”,理论与实战
前言 "小步快跑.快速迭代"的开发大环境下,"一套代码.多端运行"是很多开发团队的梦想,美团也一样.他们做了很多跨平台开发框架的尝试:React Native. ...
- Java8——快速入门手册(学习笔记)
github博文传送门 Java8特性学习笔记 Java8中新增了许多的新特性,在这里本人研究学习了几个较为常用的特性,在这里与大家进行分享.(这里推荐深入理解Java 8用于理解基础知识)本文分为以 ...
- Java7编程高级进阶学习笔记
本书PDF 下载地址: http://pan.baidu.com/s/1c141KGS 密码:v6i1 注:本文有空会跟新: 讲述的是jdk7的内容: 注关于java 更详细的内容请进入:<Ja ...
- React入门基础(学习笔记)
这篇博客是我通过阅读React官方文档的教程总结的学习笔记,翻译可能存在误差,如有疑问请参见http://reactjs.cn/react/docs/tutorial.html . 一.所需文件 在编 ...
- C#进阶学习笔记(个人整理)
学习笔记 第一章: 一.回顾数组 1.变量 : 只能存储一个数据 2.数组 :存储固定大小的相同类型的数据 3.对象 : 存储多个相同/不同类型的数据 4.集合 : 特殊的容器,存储N个相同/不同类型 ...
- 学习Vue 入门到实战——学习笔记
闲聊: 自从进了现在的公司,小颖就再没怎么接触vue了,最近不太忙,所以想再学习下vue,就看了看vue相关视频,顺便做个笔记嘻嘻. 视频地址:Vue 入门到实战1.Vue 入门到实战2 学习内容: ...
- JavaScript入门--慕课网学习笔记
JAVASCRIPT—(慕课网)入门篇 我们来看看如何写入JS代码?你只需一步操作,使用<script>标签在HTML网页中插入JavaScript代码.注意, <script&g ...
- PythonI/O进阶学习笔记_1.抽象、面向对象、class/object/type
前言: 是自己在学习python进阶IO学习视频的时候的理解和笔记,因为很多都是本菜鸟学习时候的自己的理解,有可能理解有误. Content: - 抽象的概念和面向对象的概念?想要大概了解python ...
随机推荐
- 安卓——Activity生命周期
在xml 设计页面添加标签 xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:a ...
- SecureCRT自动记录日志
From: http://lzj0470.iteye.com/blog/1189368 今天在推特上看到有人谈起SecureCRT日志记录的问题,貌似很多人都有这习惯 我是开始工作后才使用Secure ...
- xinetd黑/白名单配置教程(以telnet为例)
对于诸如telnet等托管于xinetd的服务,当请求到来时由于是通过xinetd进行通知,所以可以直接在xinetd上配置白名单允许和拒绝哪些ip连接服务. 本文主要参考xinetd.conf的ma ...
- VMware如何进入安全模式
VMware进入安全模式和物理机一样:使光标处于在虚拟机中激活状态,启动系统时不停按F8即可. 安全模式--只加载必要的驱动和进程:在cmd可以看到部份命令不能执行或命令功能不能完全实现. 网络安全模 ...
- python文件管理
文件没有修改操作,修改的方式为打开文件--读取文件--内存中编辑文件--将内容写入文件 打开文件方式 with open('a.txt','w') as f: #操作系统自动关闭文件 f.write( ...
- Win10系列:JavaScript 数据绑定
使用数据绑定可以使页面中元素的属性值与数据源中的数据同步,其中数据源可以来自数据库.文件以及自定义的数据等.在常用的数据绑定方法中,简单对象绑定是将HTML元素与一个仅包含数据的简单对象相绑定,模板绑 ...
- learning svn change commit log
将repository内hook子文件夹中的pre-revprop-change.tmpl复制改成pre-revprop-change.bat,内容改为:exit 0
- js数组及常用数学方法
数组方法 清空数组 1: arr.length=0; 2: arr=[]; arr.push() //往数组最后一个添加元素,会待会一个返回值,就是新的数组长度arr.uns ...
- Unity运行错误代码处理
1.Unity在运行时出现如图错误,但不影响运行效果展示. 2.错误原因:代码不规范. 3.检查代码,查看变量是否定义正确.
- javascript 跑马灯
1.看了写跑马灯的教程案例,隔了段时间自己写了一个简单的跑马灯.将过程中遇到的问题特此记录下来 代码如下: <!DOCTYPE html> <html> <head> ...