系统背景:cenos6.5

操作工具:Xshell5

情况一:正常情况(系统有service命令)

重启服务命令:[root@centos6 /]# service crond restart

启动服务命令:[root@centos6 /]# service crond start

停止服务命令:[root@centos6 /]# service crond stop

情况二:当linux发行的版本没有service这个命令时候,用如下命令进行停止启动:

停止服务:[root@centos6 /]# /etc/init.d/cron空格stop

启动服务:[root@centos6 /]# /etc/init.d/cron空格start

Linux crontab和Windows task schedules非常的相似。Crontab可以用来在系统中定期的执行任务。比如:写了一个爬虫需要每天早上八点执行,就可以用到Crontab;安装的Tomcat服务器需要每天凌晨重启一次,也可以使用到Crontab。总之,几乎所有的定时任务,我们都可以通过Crontab这个工具来完成。

安装


yum install cronie`

Crontab在Linux上的结构


 
crontab结构.png

从左到右依次为:
[分钟] [小时] [每月的某一天] [每年的某一月] [每周的某一天] [执行的命令]
注意:请留意每个选项的取值范围。

如何 添加/编辑 Crontab


  • 添加或更新crontab中的命令
crontab -e

默认情况下,系统会编辑当前登录用户的crontab命令集合。需要编辑其他用户的命令集合,需要使用到如下的命令

crontab -u username -e

查看Crontab命令集合


  • 查看当前系统登录用户的Crontab命令集合
crontab -l
  • 查看其他用户的Crontab命令集合
crontab -u username -l

20个超实用的Crontab使用实例


  1. 每天 02:00 执行任务
0 2 * * * /bin/sh backup.sh
  1. 每天 5:00和17:00执行任务
0 5,17 * * * /scripts/script.sh
  1. 每分钟执行一次任务
    通常情况下,我们并没有每分钟都需要执行的脚本(默默的想到了12306--)
  * * * * *  /scripts/script.sh
  1. 每周日 17:00 执行任务
0 17 * * sun  /scripts/script.sh
  1. 每 10min 执行一次任务
*/10 * * * * /scripts/monitor.sh
  1. 在特定的某几个月执行任务
  * * * jan,may,aug * /script/script.sh
  1. 在特定的某几天执行任务
0 17 * * sun,fri /script/scripy.sh

在每周五、周日的17点执行任务

  1. 在某个月的第一个周日执行任务
0 2 * * sun  [ $(date +%d) -le 07 ] && /script/script.sh
  1. 每四个小时执行一个任务
0 */4 * * * /scripts/script.sh
  1. 每周一、周日执行任务
0 4,17 * * sun,mon /scripts/script.sh
  1. 每个30秒执行一次任务
    我们没有办法直接通过上诉类似的例子去执行,因为最小的是1min。但是我们可以通过如下的方法。
  * * * * * /scripts/script.sh
* * * * * sleep 30; /scripts/script.sh
  1. 多个任务在一条命令中配置
  * * * * * /scripts/script.sh; /scripts/scrit2.sh
  1. 每年执行一次任务
@yearly /scripts/script.sh

@yearly 类似于“0 0 1 1 *”。它会在每年的第一分钟内执行,通常我们可以用这个发送新年的问候。

  1. 每月执行一次任务
@yearly /scripts/script.sh
  1. 每周执行一次任务
@yearly /scripts/script.sh
  1. 每天执行一次任务
@yearly /scripts/script.sh
  1. 每分钟执行一次任务
@yearly /scripts/script.sh
  1. 系统重启时执行
@reboot /scripts/script.sh
  1. 将 Cron 结果重定向的特定的账户
    默认情况下,cron 只会将结果详情发送给 cron 被制定的用户。如果需要发送给其他用户,可以通过如下的方式:
  # crontab -l
MAIL=bob
0 2 * * * /script/backup.sh
  1. 将所有的 cron 命令备份到文本文件当中
    这是一个当我们丢失了cron命令后方便快速的一个恢复方式。
    下面是利用这个方式恢复cron的一个小例子。(看看就行~)
    首先:检查当前的cron
# crontab -l
MAIL=rahul
0 2 * * * /script/backup.sh

然后:备份cron到文件中

# crontab -l > cron-backup.txt
# cat cron-backup.txt
MAIL=rahul
0 2 * * * /script/backup.sh

接着:移除当前的cron

# crontab -r
# crontab -l
no crontab for root

恢复:从text file中恢复

# crontab cron-backup.txt
# crontab -l
MAIL=rahul
0 2 * * * /script/backup.sh

作者:LeeLom
链接:http://www.jianshu.com/p/d93e2b177814
來源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

Linux 定时执行任务:Crontab服务及应用集锦的更多相关文章

  1. linux定时执行任务crontab命令用法

    linux系统的定时任务是由 cron (crond) 这个系统服务来控制的.Linux 系统上面原本就有非常多的计划性工作,因此这个系统服务是默认启动的.另外, 由于使用者自己也可以设置计划任务,所 ...

  2. linux 定时执行任务 crontab

    欲编写定时任务访问网页和打开图片 原来写法为 #!/bin/bash #可以执行 echoecho "Hello" > dir/file.txt #不可以执行 xdg-ope ...

  3. Debian的定时执行命令Crontab

    转载:http://i.592.net/?post=276 Debian的定时执行命令Crontab,这个相当于Windows的计划任务 想要让Debian定时执行命令就得靠crontab了!     ...

  4. linux定时执行任务 转

    转自:http://www.cnblogs.com/thinksasa/archive/2013/06/06/3121030.html linux定时执行任务   (1)Linux下如何定时执行php ...

  5. linux后台执行命令crontab

    有如下几种方式: crontab at & nohup 1. crontab 定时执行任务 # crontab -e //编辑crontab配置文件 Select an editor. To ...

  6. .net 开发定时执行的windows服务

    环境:win7+vs2010+Oracle11g+office2010(64位操作系统) 需求:开发定时执行的windows服务从数据库中查询数据下载到指定地址Excel中 一.添加新建项目——win ...

  7. Linux定时执行任务命令概述:at和crontab

    本文介绍在Linux下的两种定时执行任务的方法:at命令,以及crontab服务. (1)at命令 假如我们只是想要让特定任务运行一次,那么,这时候就要用到at监控程序了. 设置at命令很简单,指示定 ...

  8. Linux 定时执行shell脚本命令之crontab

    crontab可以在指定的时间执行一个shell脚本以及执行一系列Linux命令 例如:服务器管理员定时备份数据库数据.日志等 详解: 常用命令: crontab –e //修改 crontab 文件 ...

  9. 转 Linux定时执行任务命令at和crontab

    本文介绍在Linux下的两种定时执行任务的方法:at命令,以及crontab服务. (1)at命令 假如我们只是想要让特定任务运行一次,那么,这时候就要用到at监控程序了. 设置at命令很简单,指示定 ...

随机推荐

  1. windows 10下通过python3.6成功搭建jupyter 服务器

    最近通过python学习爬虫技术,发现一个工具jupyter notebook很不错,该工具明显优势通过浏览器可以输入多行python代码,支持在线运行以及运行结果保存功能,在线验证python小模块 ...

  2. linux的链接工具secure设置字体大小和颜色

  3. php的set_time_limit()函数

    set_time_limit(0); 括号里边的数字是执行时间,如果为零说明永久执行直到程序结束,如果为大于零的数字,则不管程序是否执行完成,到了设定的秒数,程序结束. 一个简单的例子,在网页里显示1 ...

  4. Python内置函数(55)——globals

    英文文档: globals() Return a dictionary representing the current global symbol table. This is always the ...

  5. python入门:python包管理工具pip的安装

    pip 是一个安装和管理 Python 包的工具 , 是 easy_install 的一个替换品. distribute是setuptools的取代(Setuptools包后期不再维护了),pip是e ...

  6. redis入门(03)redis的配置

    一.配置文件 Redis 的配置文件位于 Redis 安装目录下,文件名为 redis.conf.你可以通过 CONFIG 命令查看或设置配置项. 二.查看修改 1.查看配置 1.1.vi redis ...

  7. copy代码(含static对象)留下的致命错误

    本来以为这个bug快改不好了,然而发现了问题所在 copy代码没有完全改掉对象名称,导致对象重复创建了,由于是static所以debug过程中 注释了addProperty(gridRowDetail ...

  8. python 字符串 字节

    字符串 字节   a. 字符串转字节 1 2 key = "xxxx" bkey = bytes(key,encoding='utf-8') b. bytearray 数组 1 2 ...

  9. vi和vim编辑器

    VI vi是一种计算机文本编辑器,由美国计算机科学家比尔·乔伊(Bill Joy)完成编写,并于1976年以BSD协议授权发布. VIM Vim是从vi发展出来的一个文本编辑器.其代码补完.编译及错误 ...

  10. 愿奴胁下生双翼——— 详解cookie和session

    cookie和session都是基于web服务器的,不同的是cookie存储在客户端而session存储在服务器. 当用户浏览网站时,web服务器会在浏览器上存储一些当前用户的相关信息,在本地Web客 ...