`

linux crontab定时执行任务

 
阅读更多

-------------

想要让cron执行你指定的任务,首先就要编辑crontab文件。crontab是一个文本文件,用来存放你要运行的命令。你可以以下命令

 

 

 

  1. crontab -e 

-------------

来打开你的用户所属的crontab文件。第一次用这个命令,会让你选择文本编辑器,我选的是vim。选定的编辑器也可以使用

 

 

 

  1. select-editor 

-------------用vi编辑,保存,*/2 * * * * date >> ~/time.log  就是定时的任务

命令来更改。这点命令行中已经有足够的提示,就不多说了。

 

 

 

打开后的crontab文件类似这种样子:

 

 

 

  1. # m h  dom mon dow   command  
  2. */2 * * * * date >> ~/time.log  

 

 

 

第二行是我为了测试写的一个定期任务,它的意思是,每隔两分钟就执行 date >> ~/time.log 命令(记录当前时间到time.log文件)。你可以把它加入你的crontab中,然后保存退出。

-------------

保存了crontab之后,我们还需要重启cron来应用这个计划任务。使用以下命令:

 

 

 

  1. sudo service cron restart 

 

现在定时任务就好了,就可以在 home目录下,看到 time.log文件

-------------

crontab的命令格式

crontab -l 显示当前的crontab 文件

crontab -r 删除当前的crontab (谨慎使用此方法,因为将会把所有的计划任务全部删除)

crontab -e 使用编辑器编辑当前的crontab文件

 

-------------

-------------

下面稍微解释下crontab中每行的含义。crontab中的每一行代表一个定期执行的任务,分为6个部分。前5个部分表示何时执行命令,最后一 个部分表示执行的命令。每个部分以空格分隔,除了最后一个部分(命令)可以在内部使用空格之外,其他部分都不能使用空格。前5个部分分别代表:分钟,小 时,天,月,星期,每个部分的取值范围如下:

 

 

 

分钟          0 - 59

 

小时          0 - 23

 

天              1 - 31

 

月              1 - 12

 

星期          0 - 6       0表示星期天

 

 

 

除了这些固定值外,还可以配合星号(*),逗号(,),和斜线(/)来表示一些其他的含义:

 

 

 

星号          表示任意值,比如在小时部分填写 * 代表任意小时(每小时)

 

逗号          可以允许在一个部分中填写多个值,比如在分钟部分填写 1,3 表示一分钟或三分钟

 

斜线          一般配合 * 使用,代表每隔多长时间,比如在小时部分填写 */2 代表每隔两分钟。所以 */1 和 * 没有区别

 

                  */2 可以看成是能被2整除的任意值。

 

 

 

以下是一些例子(省略了命令部分):

 

 

 

  1. * * * * *                  # 每隔一分钟执行一次任务  
  2. 0 * * * *                  # 每小时的0点执行一次任务,比如6:0010:00  
  3. 6,10 * 2 * *            # 每个月2号,每小时的6分和10分执行一次任务  
  4. */3,*/5 * * * *          # 每隔3分钟或5分钟执行一次任务,比如10:0310:0510:06  

 

 

 

以上就是在cron中加入计划任务的基本知识。因为cron中的任务基本就是执行命令行,所以当然也会有权限问题。以上例子中的任务就是以你当前登录用户的权限执行的,如果你需要以root用户执行某个任务,可以在crontab前加上sudo。

-------------

 

分享到:
评论

相关推荐

    Linux Crontab 定时任务 命令详解

    crontab命令的功能是在一定的时间间隔调度一些命令的执行。

    Linux中crontab定时任务不执行的原因

    本篇文章主要介绍了Linux中crontab定时任务不执行的原因,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

    Linux下的crontab定时执行任务命令详解

    cron的配置文件称为“crontab”,是“cron table”的简写。这篇文章主要介绍了Linux下的crontab定时执行任务命令详解,需要的朋友可以参考下

    crontab定时任务不执行的一些原因总结

    最近在工作中遇到了一些问题,crontab定时任务居然不执行,后来我在网上找的时候发现网上主要说了这5个原因: 1 crond服务未启动 crontab不是Linux内核的功能,而是依赖一个crond服务,这个服务可以启动当然也可以...

    linux下定时执行任务的方法及crontab 用法说明(收集整理)

    linux下定时执行任务的方法 在LINUX中,周期执行的任务一般由cron这个守护进程来处理[ps -ef|grep cron]。cron读取一个或多个配置文件,这些配置文件中包含了命令行及其调用时间。 cron的配置文件称为“crontab”,...

    linux定时任务crontab 实现每秒执行一次的方法

    linux crontab 命令,最小的执行时间是一分钟。这篇文章主要介绍了linux定时任务crontab 实现每秒执行一次的方法,需要的朋友可以参考下

    crontab定时任务不执行的原因分析与解决方法

    主要给大家介绍了关于crontab定时任务不执行的原因分析与解决方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

    suse linux crontab 任务计划 sh文件不能执行分析

    命令可以正常 执行,但sh文件不能执行分析

    Ubuntu crontab 定时执行php脚本文件

    Unix和Linux系统的各个发行版本基本都支持Cron,Cron /Crontab允许我们在设定的时间自动执行或定时执行某个任务,如应用程序或脚本。 许多的php程序员都可以很快完成Web应用的开发,PHP代码的调试也比PERL或C语言...

    Linux定时任务Crontab详解

    Linux下的定时执行主要是使用crontab文件中加入定制计划来执行,设置比Windows稍微复杂一些(因为没有图形界面嘛),但是也不是非常复杂,基本上用过一遍能记住了,关键是要记住/var/spool/cron这个目录。下面看一下...

    Linux定时任务Crontab详解(推荐)

    Linux下的定时执行主要是使用crontab文件中加入定制计划来执行,设置比Windows稍微复杂一些(因为没有图形界面嘛),但是也不是非常复杂,基本上用过一遍就能记住了,关键是要记住/var/spool/cron这个目录。...

    如何利用Crontab为Linux定时备份Mysql数据库

    利用系统Crontab来定时执行备份文件,按日期对备份结果进行保存,可以达到备份的目的。本文介绍了利用Crontab为Linux定时备份Mysql数据库的步骤。

    【crontab】定时自动完成Gitee、GitHub的代码提交(Windows和Linux)

    1. Linux服务器(crontab定时执行); 2. Windows(可以自己通过定时任务调用脚本完成上传); 功能详细介绍 : 定时完成代码的自动提交操作 具体操作方式及思路访问文章 :...

    Linux操作系统用crontab做定时关闭启动tomcat

    linux操作系统,制定定时任务步骤:  用ssh工具连接到系统后,执行如下步骤:  1)crontab -l 查看定时;  2)crontab -e 此时表示已可以编辑定时任务,但还没进入编辑模式;  3)再次输入i,进入编辑...

    Linux crontab定时任务配置方法(详解)

    crontab命令用于设置周期性被执行的指令。该命令从标准输入设备读取指令,并将其存放于“crontab”文件中,以供之后读取和执行。 cron 系统调度进程。 可以使用它在每天的非高峰负荷时间段运行作业,或在一周或一月...

    django-crontab 定时执行任务方法的实现

    需求 每天请求一封邮件,并读取该邮件 这个其实可以使用linux 自带了crontab实现,但是毕竟是django 开发。想着不知道有没有方法可以从django 中实现。...接下来创建定时任务可以分成两种,一种是执行自定

Global site tag (gtag.js) - Google Analytics