ITPub博客

Crontab定时任务调度介绍

原创 作者:tangyunoracle 时间:2014-01-05 22:59:39 0 删除 编辑
Crontab是一个操作系统的定时执行工具,可以在无需人工干预的情况下运行作业。一般在安装操作系统都会把Crontab这个服务打开,我们可以直接用这个服务,可以直接用crontab命令编辑,调度后台作业:
crontab -u  -----设定某个用户的crontab服务,一般root用户在执行这个命令的时候需要此参数。
crontab -l  -----列出某个用户cron服务的详细内容
crontab -r  -----删除某个用户的cron服务
crontab -e  -----编辑某个用户的cron服务
比如root查看oracle的crontab设置:crontab -u oracle -l
   root想删除oracle的crontab设置:crontab -u oracle -r
crontab的格式为:分 时 日 月 星期 要运行的命令,即crontab分为六列,第六列为要执行的命令或脚本或脚本所在的文件夹,其他五列代表调度的时间设置:
  第一个列代表分钟,取值:0-59
  第二个列代表小時,取值:0-23
  第三个列代表日期,取值:1-31
  第四个列代表月份,取值:1-12
  第五个列代表星期,取值:0-6,其中0代表星期天
  除了规定的数字还有几个个特殊的符号就是“*”、“/”和“-”、“,”,最经常用到的就是“*”,“*”代表所有的取值范围内的数字,“/”代表每个单位的意思,"*/5"表示每5个单位,"-"代表从某个数字到某个数字,","分开几个离散的数字。
    crontab其实是保存在/var/spool/cron下的,创建crontab会自动生成一个与此用户同名的文件,此用户的crontab信息都记录在这个文件中,这个文件是不可以直接编辑的,只可以用crontab -e 来编辑。cron启动后每过一份钟读一次这个文件,检查是否要执行里面的命令。因此此文件修改后不需要重新启动crontab服务。
   这里需要注意一个叫“run-parts”的参数,如果加上这个参数,代表执行文件夹中的命令,而不是执行脚本或者命令,如果不加则代表执行命令或者脚本。
比如:# run-parts
30 * * * * oracle run-parts /home/oracle/ty      ----每半点执行ty文件夹下的脚本。
30 * * * * sh /home/oracle/ty.sh 1>/home/oracle/ty.sh.out 2>&1 ----每半点执行ty.sh脚本。
由于Crontab是操作的内置服务,但它不自动起来,可以用以下的方法启动、关闭这个服务。
# /sbin/service crond start  ------启动服务
# /sbin/service crond stop   -----关闭服务
# /sbin/service crond restart -----重启服务
# /sbin/service crond reload  -----重新载入配置
将“/sbin/service crond start”添加在/etc/rc.d/rc.local这个脚本的末尾。
=============End==================================
请登录后发表评论 登录
全部评论
有空写写一写,没空看一看。。。 微信号:tangyun0925
  • 博文量
    112
  • 访问量
    1701162