Linux中的cron计划任务配置详解

cron来源于希腊单词chronos(意为“时间”),指Linux系统下一个自动执行指定任务的程序(计划任务)

####1. crontab命令选项
代码如下:

#crontab -u <-l, -r, -e>

-u指定一个用户

-l列出某个用户的任务计划

-r删除某个用户的任务

-e编辑某个用户的任务

####2. cron文件语法与写法
可用crontab -e命令来编辑,编辑的是/var/spool/cron下对应用户的cron文件,也可以直接修改/etc/crontab文件。具体格式如下:

 

代码如下:

 

Minute Hour Day Month Week command

 

分钟 小时 星期 命令

 

0-59 0-23 1-31 1-12 0-6 command

 

每个字段代表的含义如下:

 

代码如下:

 

Minute 每个小时的第几分钟执行该任务

 

Hour 每天的第几个小时执行该任务

 

Day 每月的第几天执行该任务

 

Month 每年的第几个月执行该任务

 

DayOfWeek 每周的第几天执行该任务,0表示周日

 

Command 指定要执行的程序 、脚本或命令

 

在这些字段里,除了“Command”是必须指定的字段以外,其它字段皆为可选。对于不指定的字段,要用“*”来填补其位置。

 

####3. 几个特殊符号的含义

 

“*”代表取值范围内的数字,
“/”代表”每”,
“-”代表从某个数字到某个数字,
“,”分开几个离散的数字

 

####4. 关于cron配置文件/etc/crontab

 

cron 的主配置文件是 /etc/crontab,它包括下面几行:

 

代码如下:

 

SHELL=/bin/bash

 

PATH=/sbin:/bin:/usr/sbin:/usr/bin

 

MAILTO=root

 

HOME=/

 

# run-parts

 

01 * * * * root run-parts /etc/cron.hourly

 

02 4 * * * root run-parts /etc/cron.daily

 

22 4 * * 0 root run-parts /etc/cron.weekly

 

42 4 1 * * root run-parts /etc/cron.monthly

 

前四行是用来配置 cron 任务运行环境的变量:
SHELL 变量的值指定shell 环境(此处默认为 bash shell);PATH 变量定义用来执行命令的程序路径;cron 任务的输出被邮寄给 MAILTO 变量定义的用户名,如果 MAILTO 变量被定义为空白字符串(MAILTO=""),电子邮件就不会被寄出;HOME 变量可以用来设置在执行命令或脚本时使用的主目录。

 

如在 /etc/crontab 文件中run-parts部分所示,它使用 run-parts 脚本来执行存在于 /etc/cron.hourly、/etc/cron.daily、/etc/cron.weekly 和 /etc/cron.monthly 目录中的脚本,这些脚本被相应地按照预设时间在每小时、每日、每周、或每月执行。这些目录中的文件应该是 shell 脚本,并且具有可执行权限(chmod +x filename)。

 

如果某 cron 任务需要根据调度来执行,而不是每小时、每日、每周、或每月地执行,它可以被添加到/etc/cron.d目录中。该目录中的所有文件使用和 /etc/crontab 中一样的语法。

 

每次编辑完某个用户的cron设置后,cron自动在/var/spool/cron下生成一个与此用户同名的文件,此用户的cron信息都记录在这个文件中,这个文件是不可以直接编辑的,只可以用crontab -e 来编辑。cron启动后每过一份钟读一次这个文件,检查是否要执行里面的命令。因此此文件修改后不需要重新启动cron服务。

 

####5. 常见cron示例参考

 

5  * * * * ls 指定每小时的第5分钟执行一次ls命令

 

30 5 * * * ls 指定每天的 5:30 执行ls命令

 

30 7 8 * * ls 指定每月8号的730分执行ls命令

 

30 5 8 6 * ls 指定每年的68530执行ls命令

 

30 6 * * 0 ls 指定每星期日的6:30执行ls命令[注:0表示星期天,1表示星期1,以此类推,也可以用英文来表示,sun表示星期天,mon表示星期一等。]

 

30 3 10,20 * * ls 每月10号及20号的330执行ls命令[注:用来连接多个不连续的时段]

 

25 8-11 * * * ls 每天8-11点的第25分钟执行ls命令[注:“-”用来连接连续的时段]

 

*/15 * * * * ls 15分钟执行一次ls命令 [即每个小时的第0 15 30 45 60分钟执行ls命令 ]

 

30 6 */10 * * ls 每个月中,每隔106:30执行一次ls命令[即每月的1112131日是的630执行一次ls命令 ]

 

例如:1.每天750root 身份执行/etc/cron.daily目录中的所有可执行文件

 

                    50 7 * *  * root run-parts  /etc/cron.daily [ 注:run-parts参数表示,执行后面目录中的所有可执行文件

 

    2.第102030分钟输出到/tmp/cron1.txt

 

                    10,20,30 * * * * echo "102030分钟输出一次" >> /tmp/cron1.txt

 

     3.以用户lzw.me的身份每两小时就运行某个程序:

 

                0 */2 * * * lzw.me /usr/bin/somecommand >> /dev/null 2>&1

 

####6. 特别提示
A、cron配置文件路径

 

#vi /etc/crontab

 

B、重启cron的方法

 

#/etc/rc.d/init.d/crond restart

 

Usage: /etc/rc.d/init.d/crond {start|stop|status|reload|restart|condrestart}

 

C、别忘了将脚本改成可执行

 

chmod +x filename

 

转载于:https://www.cnblogs.com/liuxiaoqing/p/9266411.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/254154.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

new和delete

和 sizeof 类似&#xff0c;sizeof不是函数&#xff0c;它是一个操作符&#xff0c;它在编译期就完成了计算&#xff0c;在函数运行期间它已经是一个常数值了。 int a;sizeof(int) 4;sizeof(a) 4;sizeof a ——也是4 不需要括号&#xff01;此时要注意&#xff1a;sizeof in…

char a[]和char *a的比较,数组名,数组首地址,a,a,a[0]

char a[]和char *a的比较 指针和数组存在着一些本质的区别。当然&#xff0c;在某种情况下&#xff0c;比如数组作为函数的参数进行传递时&#xff0c;由于该数组自动退化为同类型的指针&#xff0c;所以在函数内部&#xff0c;作为函数参数传递进来的指针与数组确实具有一定的…

Java中继承thread类与实现Runnable接口的区别

Java中线程的创建有两种方式&#xff1a; 1&#xff0e; 通过继承Thread类&#xff0c;重写Thread的run()方法&#xff0c;将线程运行的逻辑放在其中 2&#xff0e; 通过实现Runnable接口&#xff0c;实例化Thread类 在实际应用中&#xff0c;我们经常用到多线程&#xff0c;…

【VMware vSAN 6.6】6.2.启用性能服务:vSAN硬件服务器解决方案

目录 1. 简介 1.1.适用于HCI的企业级存储2. 体系结构 2.1.带有本地存储的服务器2.2.存储控制器虚拟系统套装的缺点2.3.vSAN在vSphere Hypervisor中自带2.4.集群类型2.5.硬件部署选项3. 启用vSAN 3.1.启用vSAN3.2.轻松安装3.3.主动测试4. 可用性 4.1.对象和组件安置4.2.重新构建…

Android eclipse导入项目后出现Unable to resolve target #39;android-17#39;解决方法

eclipse导入项目后出现Unable to resolve target android-17解决方法。在最后附带还有一种编译逻辑不成功情况解决方法。 一、问题情况 二、解决的方法 1、改动项目的目标版本号与当前Android sdk相相应的版本号 2、自己主动修复一下项目 三、这个问题不是上面的。是另外情况&a…

多个圆点,鼠标选取两个,求两个点的距离,用于计算像素尺寸(halcon实现)

read_image (Image, C:/Users/22967/Desktop/晶圆找位置/0.bmp) dev_close_window () dev_open_window_fit_image (Image, 0, 0, -1, -1, WindowHandle) dev_display (Image)binary_threshold (Image, Region1, max_separability, dark, UsedThreshold) connection (Region1, C…

修改UBOOT和LINUX调试串口(TI达芬奇芯片--DM6467)

Posted on 2011-10-31 10:53 jamiedu 阅读(889) 评论(0) 编辑 收藏 1.1 概述 TI针对DM6467提供的UBOOT和内核默认都是串口0作为调试串口输出的&#xff0c;但现在我需要使用DM6467的UART0的modem功能&#xff0c;所以修改代码&#xff0c;改变调试串口为串口2。 需要修改的主要…

Java List与数组之间的转换

http://blog.csdn.net/kingzone_2008/article/details/8444678转载于:https://www.cnblogs.com/longshiyVip/p/5985981.html

受欢迎的五个开源可视化工具——你的选择是?

摘要&#xff1a;大数据时代&#xff0c;数据为王&#xff0c;还在对一堆数据而发愁吗&#xff1f;试试可视化工具吧&#xff0c;相信本文提到的五款工具有一款能够帮助到你。人工智能时代&#xff0c;数据和算法以及硬件资源是非常重要的&#xff0c;相关行业的大公司也越来越…

halcon车刀崩边检测

list_files (新建文件夹, files, Files) read_image (Image, Files[0]) dev_close_window () get_image_size (Image, Width, Height) dev_open_window (0, 0, Width/1.5, Height/1.5, black, WindowHandle) dev_set_draw (margin) dev_set_colored (12) for Index:0 to |Files…

FFMPEG解码264文件步骤

本文以H264视频流为例&#xff0c;讲解解码流数据的步骤。 为突出重点&#xff0c;本文只专注于讨论解码视频流数据&#xff0c;不涉及其它&#xff08;如开发环境的配置等&#xff09;。如果您需要这方面的信息&#xff0c;请和我联系。 准备变量 定义AVCodecContext。如果…

Storm概念学习系列之storm的特性

不多说&#xff0c;直接上干货&#xff01; storm的特性 Storm 是一个开源的分布式实时计算系统&#xff0c;可以简单、可靠地处理大量的数据流。 Storm支持水平扩展&#xff0c;具有高容错性&#xff0c;保证每个消息都会得到处理&#xff0c;而且处理速度很快&#xff08;在一…

Confluence 6 配置服务器基础地址示例

2019独角兽企业重金招聘Python工程师标准>>> 如果 Confluence 的安装是没有安装在非根目录路径&#xff08;这个是上下文路径&#xff09;&#xff0c;然后服务器基础 URL 地址应该包括上下文地址。例如&#xff0c;你的 Confluence 正在运行在下面的地址&#xff1…

BootstrapValidator验证

bootstrap&#xff1a;能够增加兼容性的强大框架. 因为项目需要数据验证&#xff0c;看bootstrapValidator 还不错&#xff0c;就上手一直&#xff0c;完美兼容&#xff0c;话不多说。 需要引用css&#xff1a; bootstrap.min.css bootstrapValidator.min.css js: jquery-1.10.…

基于ARM9的视频采集传输系统

http://www.ic37.com/htm_tech/2007-11/77189_618093.htm

halcon找矩形顶点的一种方法

主程序&#xff1a; read_image (Image11, 11)*画仿射矩形 dev_set_color (green) draw_rectangle2 (3600, Row, Column, Phi, Length1, Length2)*生成仿射矩形xld gen_rectangle2_contour_xld (Rectangle, Row, Column, Phi, Length1, Length2) *找顶点工具&#xff08;基于卡…

老男孩linux运维50期

一、自我介绍&#xff1a;我是来自老男孩Linux运维脱产50期的杨国峰&#xff0c;我以前是学软件编码的&#xff0c;但在大学里基本没怎么学&#xff0c;每一门课都一知半解的&#xff0c;甚至有些连软件都不会装&#xff0c;在校期间&#xff0c;我对JAVA、网页设计等都不感兴趣…

博客收藏

http://www.dreamfairy.cn/blog/category/unity3d/转载于:https://www.cnblogs.com/wantnon/p/5989843.html

移动开发平台性能比較

jquerymobile是一个mobile平台下的js框架,跟phonegap没有一毛钱关系.phonegap实际上在国内占有率不高的,非常多人为了体验喜欢做传统的原生手机应用. 而Webapp如今的占有率越来越少,由于越来越多的人不喜欢用手机浏览器去体验专门为移动平台搭建的站点.我认为你的比較对象应该是…

H264关于RTP协议的实现

完整的C&#xff0f;S架构的基于RTP&#xff0f;RTCP的H&#xff0e;264视频传输方案。此方案中&#xff0c;在服务器端和客户端分别进行了功能模块设计。服务器端&#xff1a;RTP封装模块主要是对H&#xff0e;264码流进行打包封装&#xff1b;RTCP分析模块负责产牛和发送RTCP…