`
zhangcxy
  • 浏览: 42898 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

cron

 
阅读更多

crontab命令用于定时执行指定的命令,功能类似Windows下的“任务计划”,通常用来做一些重复性的工作。

Linux系统的用户只需将要执行的命令序列加到crontab文件中,操作系统即会按用户配置的时间执行这些命令序列。

向crontab文件里添加指令之前,需要检查下crontab服务是否已启动和是否开机自动启动:

查看crontab服务状态:service crond status

手动启动crontab服务:service crond start

查看crontab服务是否已设置为开机启动,执行命令:ntsysv

打开服务配置,查看crond服务前的[]是否已选中(打*号为选中),若未选中则选中该服务。

使用命令:crontab -l 查看当前用户已配置的任务计划

编辑crontab文件命令:crontab -e

也可以不使用“crontab -e”命令创建crontab配置文件,其他任何文本编辑器编写命令序列,比如文件名为“abc.cron”,然后使用命令:“crontab abc.cron”将命令序列添加到crontab中。

默认情况下,系统所有用户都可以使用crond服务。如需对crond服务的使用加限制,可以使用配置文件/etc/cron.allow和 /etc/cron.deny,望文生义,cron.allow是允许使用crond服务的用户清单,cron.deny里的用户则相反

crontab命令的语法格式如下:

格式一:crontab [-u user] file
此命令用于添加一个新的crontab 文件

-u 如果使用该选项,指定用户的 crontab 文件将被修改,反之则修改执行 crontab 命令用户的 crontab 文件。

格式二:crontab [-u user] [ -e | -l | -r ]

-l 在标准输出上显示当前的crontab。
-r 删除当前的crontab文件。
-e 使用系统编辑器编辑当前的crontab文件。当编辑完成后,文件将自动安装。这种方式很方便,修改后即时生效。

废话了半天,这里才是重点。crontab 文件中命令格式如下:

minute hour day-of-month month-of-year day-of-week commands

即:“分 时 日 月 周 命令”,共计6段,前5段都是时间,最后一段才是你要定期执行的指令。每段之间使用空格或者制表符分隔。

来看一下前5段即日期和时间的取值范围

1,分钟[00-59]
2,小时[00-23]
3,日[01-31]
4,月份[01-12]
5,周[0-6] ;注意,这里的0表示周日

OK,来个简单点的例子,每天早上6点半起床:

30 06 * * * echo "Get Up Now !" >> /tmp/test.txt

将上面这条指令另到crontab文件,系统每天上午6点半会向/tmp/test.txt文件里添加一行“Get Up Now !”。

上面这条指令里使用了特殊符号“*”,与SQL查询语句“SELECT * FROM TAB”里的“*”一样是“任何”的意思,即代表当前段取值范围内的所有数字,如第3段上的“*”代表[01-31]日,第4段上的“*”代表[01-12]月。

特殊符号除了“*”号还有“/”、“-”、“,”:

/ 代表“每”的意思,如“/5”表示每5个单位;
- 用于表示一个范围,如“[1-10]”表示从1到10;
, 用于表示若干离散的数字,如“5,15,25”

比如命令:[0-59]/5 23 * * * /sbin/shutdown -h now

表示每晚11点开始,每5分钟尝试一次关机,帮你养成早睡早起的好习惯,呵呵。机器关掉后,如果尝试开机,则到5的倍数时会再次关掉,酷似Windows 2000中了冲击波病毒。

00,10,20,30,40,50 * * * * echo "10 minutes has passed !" >> /tmp/test.txt

每小时的00分、10分、20分、30分、40分、50分向文件“/tmp/test.txt”写一行又十分钟过去喽。

根据上面的命令格式和时间描述方式,你就可以让系统在预订时间做些稀奇古怪的事了。

分享到:
评论

相关推荐

    vue-cron_vue-cron_vuecrond组件_vuecron_

    Vue-Cron是一款基于Vue.js开发的时间周期(Cron)表达式组件,用于在前端应用程序中创建、编辑和处理定时任务。Vue-Cron旨在提供一种直观的用户界面,让用户能够通过图形化的方式设置复杂的Cron表达式,从而实现定时...

    cron中英文表达式

    cron是Unix/Linux操作系统中的一个调度任务工具,用于设置周期性被执行的任务。它的名称来源于古英语单词"crone",象征时间的流转。在JavaScript中,我们可以利用类似cron的表达式来实现定时任务,例如通过`jquery-...

    C# Cron表达式解析 .net

    C# Cron表达式解析在.NET开发中是一种常见且重要的任务,尤其在自动化任务调度和计划程序的场景下。Cron表达式源于Unix操作系统,用于定义周期性任务的执行时间。在C#中,通过理解并解析Cron表达式,开发者可以创建...

    cron表达式cron生成器

    cron表达式是Unix/Linux系统中用于安排周期性任务的调度工具,它允许用户根据特定的时间间隔定义任务执行的计划。这个“cron表达式cron生成器”可能是为了简化cron表达式的创建过程而设计的一个在线工具或者软件,...

    Cron前端生成工具

    【Cron前端生成工具】是一种方便用户在前端环境中设置和管理Cron表达式的实用工具,类似于http://cron.qqe2.com/所提供的在线服务。Cron是Unix/Linux系统中的一种任务调度命令,允许用户预设定时任务,按照指定的...

    js cron 表达式生成器

    `node-cron`库允许在Node.js环境中创建`cron`定时任务,而`cron-parser`则提供了解析和验证`cron`表达式的能力。 总的来说,`js cron表达式生成器`是开发者不可或缺的工具,它简化了`cron`表达式的创建和管理,提高...

    vixie-cron-4.1.rar_centos-s002_crontab source code_vixie-cron_vi

    《vixie-cron-4.1:CentOS下的crontab定时任务源代码解析》 在Linux系统中,crontab是用于设置周期性被执行的任务的工具,它源自著名的Unix系统工具cron。Vixie-cron是cron的一个实现版本,由Paul Vixie开发,广泛...

    Cron表达式Html源码

    Cron表达式是一种广泛用于计划任务调度的工具,它源于Unix系统,现在也被许多其他操作系统和编程语言支持,包括Java、Python、Node.js等。这种表达式定义了一种时间格式,用于描述周期性的任务执行时间。 Cron...

    Cron_cron_Cron表达式解析_

    Cron是一种广泛使用的任务调度工具,它源自Unix操作系统,用于安排周期性的任务执行。Cron表达式是Cron系统的核心,它定义了任务的执行时间。在这个“Cron_cron_Cron表达式解析_”的资源中,我们将深入探讨Cron...

    Cron表达式生成器.zip可反向解析

    Cron表达式是一种在Unix和类Unix系统中广泛使用的任务调度工具,用于设置定时任务。它基于特定的时间格式,允许用户定义精确到秒的任务执行计划。Cron表达式的语法复杂,但功能强大,可以实现从每日一次到每分钟一次...

    Cron生成表达式html源码

    Cron表达式是Quartz中一个核心的概念,用于定义定时任务的执行计划。 Cron表达式是由七个子表达式组成的字符串,每个子表达式代表不同的时间元素:秒、分钟、小时、日期、月份中的日期、月份和星期几。这些元素用...

    cron表达式自动生成

    cron表达式是Linux系统中用于设置周期性任务的工具,它是Cron Job的核心部分。这个“cron表达式自动生成”工具则提供了一种便捷的方式来创建这些复杂的表达式,尤其适合那些不熟悉cron语法或者需要快速设定定时任务...

    Cron表达式解析 翻译为中英文.zip

    【标题】:Cron表达式解析 - 中英文对照 Cron表达式是Unix/Linux系统中的定时任务调度器Cron所使用的语法,也被广泛应用于Java世界,例如Quartz、Spring等框架。它允许用户以字符串的形式定义任务的执行时间,如...

    Cron表达式生成器html源码

    Cron表达式是一种在计算机程序中广泛使用的定时任务调度工具,尤其在Java的Quartz框架中,它扮演着核心角色。Cron表达式允许我们用一种简洁的方式定义一系列的时间计划,比如每天的某个时间点执行某项任务。下面将...

    cron(动态生成cron表达式)

    cron是Unix/Linux操作系统中的一个定时任务调度命令,用于设置周期性被执行的任务。在这个场景中,我们讨论的是一个基于Vue的Cron表达式组件,它允许用户在前端界面中动态生成和配置cron表达式。Vue.js是一个流行的...

    cron表达式自动生成页面版

    cron表达式是Unix/Linux系统中的一个调度工具,用于在特定时间执行预定的任务。在Java世界中,Spring框架也广泛使用cron表达式来实现定时任务。这个"cron表达式自动生成页面版"是一个实用的工具,它允许用户在网页...

    layui第三方组件cron的使用

    在layui中,我们可以引入第三方组件来扩展其原生功能,例如使用cron组件来处理定时任务的配置和展示。本文将详细介绍如何在layui项目中集成并使用cron第三方组件。 1. **安装cron组件** 在使用cron组件前,首先...

    可直接使用-cron表达式前端生成工具.zip

    cron表达式是一种在Unix和其他类Unix系统中广泛使用的定时任务调度工具,用于配置计划任务的执行。这个压缩包“可直接使用-cron表达式前端生成工具.zip”提供了一个基于HTML、CSS和JavaScript实现的前端工具,它使得...

    vue3+ElementPlus cron组件

    Vue3 + ElementPlus Cron 组件是前端开发中的一个强大工具,它允许开发者在Web应用中实现复杂的定时任务调度功能。这个组件基于Vue3框架,并利用了ElementPlus UI库的组件和设计风格,为用户提供了友好的界面和丰富...

    Cron表达式选择器JS插件

    **Cron表达式选择器JS插件**是一种用于在Web应用程序中方便地创建和管理Cron表达式的JavaScript组件。Cron表达式是Unix系统中的一种时间调度语法,用于定义任务的执行计划。这个JS插件结合了BootStrap的样式,提供了...

Global site tag (gtag.js) - Google Analytics