1、crond介绍
crond是Linux下的任务调度命令,让系统定期执行指定程序。crond命令每分钟都会检查是否有要执行的工作,若有要执行的程序便会自动执行。
linux下任务调度工作主要分两类:
1)系统执行的工作:系统周期性所要执行的工作,如备份系统数据、清理缓存
2)个人执行的工作:某个用户定期要做的工作,自动备份网站程序

2、crond服务启动、关闭
service crond start //启动服务
service crond stop //关闭服务
service crond restart //重启服务
service crond reload //重新载入配置

3、在系统启动时自动启动服务
1)创建一个脚本crond.restart,内容如下:
service crond restart
2)把创建的脚本crond.restart放到/etc/rc.d/init.d目录下,这样就会每次开机自动运行脚本crond.restart。

4、crontab命令(用于设定cron服务)
crontab -u //设定某个用户的cron服务,一般root用户在执行这个命令的时候需要此参数
crontab -l //列出某个用户cron服务的详细内容
crontab -r //删除没个用户的cron服务
crontab -e //编辑某个用户的cron服务

//查看root用户的cron设置
crontab -u root -l

//删除oracle用户的cron设置
crontab -u oracle -r

//编辑cron服务
crontab -u root -e

5、创建任务调度的2种方式
1)用crontab -e命令创建
用crontab -e命令创建的任务调度存于/var/spool/cron中,其文件名与用户名一致。格式如下:
 分      小时     日       月      星期     命令
0-59   0-23   1-31   1-12     0-6     command     (取值范围,0表示周日一般一行对应一个任务)
每个字段代表的含义如下:
分       每个小时的第几分钟执行该任务
小时    每天的第几个小时执行该任务
日       每月的第几天执行该任务
月       每年的第几个月执行该任务
星期    每周的第几天执行该任务
命令    指定要执行的程序

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

//10月~12月间,每周一、周三、周五,每隔2个小时,执行一次wwwbak.sh
* */2 * 10-12 1,3,5 /home/tough/www/wwwbak.sh

//每个月1-5号的每天22点,执行一次wwwbak.sh
* 22 1-5 * * /home/tough/www/wwwbak.sh

2)编辑/etc/crontab文件(文件格式同上)
[root@toughhou ~]# more /etc/crontab 
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root

# For details see man 4 crontabs

# Example of job definition:
# .---------------- minute (0 - 59)
# |  .------------- hour (0 - 23)
# |  |  .---------- day of month (1 - 31)
# |  |  |  .------- month (1 - 12) OR jan,feb,mar,apr ...
# |  |  |  |  .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# |  |  |  |  |
# *  *  *  *  * user-name  command to be executed

注:cron服务每分钟不仅要读一次/var/spool/cron内的所有文件(个人执行的工作),还需要读一次/etc/crontab(系统执行的工作)。

6、任务调度执行结果输出
//10月~12月间,每周一、周三、周五,每隔2个小时,执行一次wwwbak.sh,并把执行结果输出到var/wwwbak.log文件中
* */2 * 10-12 1,3,5 /home/tough/www/wwwbak.sh > /var/wwwbak.log 2 >&1
注:2>&1 表示执行结果及错误信息。

Linux下crontab详解的更多相关文章

  1. Linux 下crontab 详解转

    http://yaksayoo.blog.51cto.com/510938/162062 Linux计划任务工具cron用法详解 linux下大名鼎鼎的计划任务工具crontab的使用介绍baidu. ...

  2. 12 Linux下crontab详解

    1. 概述: crond是linux下用来周期性的执行某种任务或等待处理某些事件的一个守护进程,与windows下的计划任务类似,当安装完成操作系统后,默认会安装此服务工具,并且会自动启动crond进 ...

  3. Linux定时任务Crontab详解

    原文地址:http://edu.codepub.com/2011/0104/28518.php      今天做了个数据库的备份脚本,顺便系统得学习一下Linux下定时执行脚本的设置.Linux下的定 ...

  4. Linux定时任务Crontab详解_定时备份

    文章来源:http://blog.chinaunix.net/uid-7552018-id-182133.html 今天做了个数据库的备份脚本,顺便系统得学习一下Linux下定时执行脚本的设置.Lin ...

  5. Linux 中 crontab 详解及示例

    cron是一个linux下的定时执行工具,可以在无需人工干预的情况下运行作业.由于Cron 是Linux的内置服务,但它不自动起来,可以用以下的方法启动.关闭这个服务: /sbin/service c ...

  6. [转]Linux定时任务Crontab详解

    转自:http://blog.chinaunix.net/uid-7552018-id-182133.html 今天做了个数据库的备份脚本,顺便系统得学习一下Linux下定时执行脚本的设置.Linux ...

  7. 【转载】Linux下makefile详解--跟我一起写 Makefile

    概述 —— 什么是makefile?或许很多Winodws的程序员都不知道这个东西,因为那些Windows的IDE都为你做了这个工作,但我觉得要作一个好的和professional的程序员,makef ...

  8. Linux下lampp详解 (转)

    重要文件解释: ProFTPD:一个Unix平台上或是类Unix平台上(如Linux, FreeBSD等)的FTP服务器程序,它是在自由软件基金会的版权声明(GPL)下开发.发布的免费软件,可以随意修 ...

  9. LINUX下 Udev详解

    如果你使用Linux比较长时间了,那你就知道,在对待设备文件这块,Linux改变了几次策略.在Linux早期,设备文件仅仅是是一些带有适当的属性集的普通文件,它由mknod命令创建,文件存放在/dev ...

随机推荐

  1. Python Virtualenv 虚拟环境

    在python2和python3共存的机器上做开发,要想互不干扰,虚拟环境很重要. Debian7 默认是python2.7.3,装好python3.4.1后怎么建立虚拟环境呢? $ pyvenv m ...

  2. android源码编译过程

    1.下载好android源码包. 2.装好vm,ubuntu(如果能在实体机装linux更好). 3.安装所需要的deb包 在终端执行如下命令: sudo apt-get install flex b ...

  3. 【转载】Android使用Application总结

    Application 配置全局Context 第一步.写一个全局的单例模式的MyApplication继承自Application 覆盖onCreate ,在这个方法里面实例化Application ...

  4. Android AdapterView 源码分析以及其相关回收机制的分析

    忽然,发现,网上的公开资料都是教你怎么继承一个baseadapter,然后重写那几个方法,再调用相关view的 setAdpater()方法, 接着,你的item 就显示在手机屏幕上了.很少有人关注a ...

  5. [改善Java代码]注意Class类的特殊性

    Java语言是先把Java源文件编译成后缀为class的字节码文件,然后再通过ClassLoader机制把这些类文件加载到内存中,最后生成实例执行的,这是Java处理的基本机制,但加载到内存中的数据是 ...

  6. MSP430常见问题之指令系统类

    Q1. IAR中怎样描述P2OUT.3脚,#define LCD_cs1 P2OUT.3; 对吗?A1:430 不能位寻址,所以一般的位操作,都通过“与”来作用.#define LCD_cs1 (P2 ...

  7. 第三篇、image 设置圆角的几种方式

    第一种: 就拿view来举例 view.layer.masksToBounds=YES; //设置为yes,就可以使用圆角 view.layer.cornerRadius= ; //设置它的圆角大小 ...

  8. PHP学习笔记 - 进阶篇(7)

    PHP学习笔记 - 进阶篇(7) 文件操作 读取文件内容 PHP具有丰富的文件操作函数,最简单的读取文件的函数为file_get_contents,可以将整个文件全部读取到一个字符串中. $conte ...

  9. 使用C#通过调用minitab的COM库自动化生成报表

    本文介绍通过C#调用minitab com组建自动化生成报表的方法. 首先需要在minitab中通过手动配置的方式生成报表来得到该报表的命令行,过程如下 选择菜单“编辑器”->“启用命令”启用命 ...

  10. java比.net优美的一个小地方

    用了四年的.net,今年转做java,内心一直吐槽java的烦琐,今天发现了一个java值得我为之点赞的地方 java的枚举居然可以这么玩,废话不多,上demo package com.sunline ...