每一日贰个linux命令,crontab定时任务

By admin in 美高梅手机版4858 on 2019年4月5日

CRONTAB是3个用以安装周期性被实践的任务的工具,有了它,大家就足以从定时工作中解放出来。

1,crontab简介

crontab定时任务,crontab职分

1,crontab简介

  crontab命令常见于Unix和Linux的操作系统之中,用于安装周期性被实施的一声令下。该命令从规范输入设备读取指令,并将其存放于“crontab”文件中,以供之后读取和履行。常常,crontab储存的指令被医生和医护人员进程激活。crond
通常在后台运转,每1分钟检查是或不是有约定的学业需求进行。这类作业壹般称为cron
jobs。

  全体用户定义的crontab 文件都被保存在/var/spool/cron目录中,其文件名与用户名相同。

  使用控制文件如下:

    黑名单:/etc/cron.deny  该文件中所列用户不容许利用crontab命令

    白名单:/etc/cron.allow  该文件中所列用户同意使用crontab命令

  Ubuntu下私下认可未有那七个文件,一般也不用,暗许全数用户均可接纳crontab命令。那多个利用控制文件的格式皆以每行3个用户,七个文件都不允许空格。借使运用控制文件被改动了,cron守护进度(crond)不必被重启。使用控制文件在每一遍用户拉长或删除1项cron职务时都会被读取。无论使用控制文件中的规定何以,root都接连能够行使cron。假设cron.allow文件存在,唯有中间列出的用户才被允许行使
cron,并且 cron.deny 文件会被忽略。要是 cron.allow 文件不存在,全部在
cron.deny 中列出的用户都被取缔利用 cron。

  用户若新增调度可以输入crontab
-e命令建立协调的crontab文件,也得以在/etc/crontab文件中增长,注意编辑权限。

 

二,crontab义务格式

  crontab文件中,每一行都代表壹项职责,每行的种种字段代表一项设置,它的格式共分为七个字段,前伍段是时刻设定段,第肆段是要实践的命令段,格式如下:

  minute   hour   day   month   week   command

  其中:

minute: 表示分钟,能够是从0到5玖里面的别样整数。

hour:表示时辰,能够是从0到二三时期的其余整数。

day:表示日期,能够是从壹到3一里头的其余整数。

month:表示月份,能够是从1到1二之内的其余整数。

week:表示星期几,能够是从0到7之间的任何整数,那里的0或7意味星期二。

command:要履行的命令,能够是系统命令,也可以是上下一心编辑的剧本文件。

美高梅手机版4858 1

  在以上各样字段中,还足以选拔以下特殊字符:

    星号(*):代表全部望的值,例如month字段即使是星号,则象征在满意别的字段的掣肘条件后每月都进行该命令操作。

    逗号(,):能够用逗号隔开分离的值内定一个列表范围,例如,“一,二,伍,7,八,九”

每一日贰个linux命令,crontab定时任务。    中杠(-):能够用整数之间的中杠表示一个整数限量,例如“二-陆”表示“贰,叁,4,5,陆”

    正斜线(/):能够用正斜线钦命时间的距离频率,例如“0-23/二”表示每两钟头实施三回。同时正斜线能够和星号1起使用,例如*/十,倘诺用在minute字段,表示每十分钟实施二遍。

 

3,cron服务

  Ubuntu系统私下认可安装cron服务。CentOS必要yum install crontabs手动安装,且服务名称叫crond。

  服务操作表达:

    service cron start   //运行服务

    service cron stop   //关闭服务

    service cron restart  //重启服务

    service cron reload    //重新载入配置

    service cron status    //查看服务意况

  查看cron进度,执行命令:ps aux | grep cron

 

 

四,crontab命令详解

  1)命令格式:

    crontab [-u user] file

    crontab [-u user] [ -e | -l | -r ]

  二)命令成效:

    通过crontab 命令,大家得以在一定的间隔时间执行钦定的系统指令或shell脚本。时间距离的单位能够是分钟、小时、日、月、周及以上的人身自由组合。那么些命令格外设合周期性的日记分析或数据备份等工作。

  三)命令参数:

    -u user:用来设定有些用户的crontab服务,例如,“-u ixdba”表示设定ixdba用户的crontab服务,此参数壹般有root用户来运转。

    file:file是命令文件的名字,表示将file做为crontab的任务列表文件并载入crontab。倘使在指令行中未有点名这几个文件,crontab命令将接受专业输入(键盘)上键入的通令,并将它们载入crontab。

    -e:编辑有个别用户的crontab文件内容。假诺不点名用户,则象征编辑当前用户的crontab文件。

    -l:展现有个别用户的crontab文件内容,倘使不钦命用户,则象征彰显当前用户的crontab文件内容。

    -r:从/var/spool/cron目录中剔除有些用户的crontab文件,就算不点名用户,则默许删除当前用户的crontab文件。

    -i:在剔除用户的crontab文件时给确认提醒。

  肆)应用示范:

    壹编写制定crontab文件内容:crontab -e

     第3次选取应用该命令会让你挑选文本编辑器,一般接纳vim。之后也可使用select-editor更改,或然修改EDITOOdyssey环境变量,如:EDITO猎豹CS陆=vi。

     编辑的剧情格式详见“贰,crontab义务格式”,保存修改后要重启服务来施行新增的天职,sudo service cron restart。

    二列出crontab文件内容:crontab -l

     平日用来备份crontab,如:crontab -l > /home/mycrontab.bak

    ③删除crontab文件:crontab -r

 

伍,crontab格式实例

  实例1:每1分钟实施叁遍command

  命令:* * * * * command

 

  实例2:每时辰的第贰和第贰陆分钟实施

  命令:3,15 * * * * command

 

实例3:在上午8点到1一点的第三和第三四分钟实施

命令:3,15 8-11 * * * command

 

实例4:每隔两日的中午八点到1一点的第3和第3肆分钟实施

命令:3,15 8-11 */2 * * command

 

实例5:每一个星期一的早上八点到1一点的第一和第2四分钟实施

命令:3,15 8-11 * * 1 command

 

实例6:每晚的21:30重启smb 

命令:30 21 * * * /etc/init.d/smb restart

 

实例7:每月1、10、22日的4 : 45重启smb 

命令:45 4 1,10,22 * * /etc/init.d/smb restart

 

实例8:每周六、周日的1 : 10重启smb

命令:10 1 * * 6,0 /etc/init.d/smb restart

 

实例九:每一天1八 : 00至二三 : 00里头每隔贰六秒钟重启smb 

命令:0,30 18-23 * * * /etc/init.d/smb restart

 

实例10:周周一的夜幕1一 : 00 pm重启smb 

命令:0 23 * * 6 /etc/init.d/smb restart

 

实例1一:每一时半刻辰重启smb 

命令:* */1 * * * /etc/init.d/smb restart

 

实例1二:中午1壹点到深夜7点以内,每隔壹钟头重启smb 

命令:

* 23-7/1 * * * /etc/init.d/smb restart

 

实例1三:每月的四号与每一周1到周三的11点重启smb 

命令:0 11 4 * mon-wed /etc/init.d/smb restart

 

实例1四:三月一号的四点重启smb 

命令:0 4 1 jan * /etc/init.d/smb restart

 

实例壹伍:每时辰执行/etc/cron.hourly目录内的本子

命令:01   *   *   *   *     root run-parts /etc/cron.hourly/

证实:假使去掉run-parts那个参数的话,后边就足以写要运转的某部脚本名,而不是目录名了

 

一,crontab简介
crontab命令常见于Unix和Linux的操作系统之中,用于安装周期性被实施的授命。该命令从行业内部输入设备…

头天学习了 at 命令是对准仅运营一回的职务,循环运转的例行性安插任务,linux系统则是由 cron (crond) 这一个系统服务来控制的。Linux 系统方面原本就有卓殊多的安插工作,因而那么些系统服务是私下认可运转的。此外, 由于使用者自个儿也可以安装安排职务,所以, Linux 系统也提供了使用者控制计划职责的命令 :crontab 命令。

一 : 检查CRONTAB服务 

  1. 自作者批评CRONTAB工具是或不是已经在主机上安装 : crontab -l
    (当然后边会介绍它确实的用途) 
  2. 反省CRONTAB服务是或不是曾经运营 : service crond
    status(其实那几个命令仍可以检查别的服务,例如 service httpd status
    检查实验apache是不是在运行) 
  3. 安装:yum install crontabs

  crontab命令常见于Unix和Linux的操作系统之中,用于安装周期性被实践的指令。该命令从规范输入设备读取指令,并将其存放于“crontab”文件中,以供现在读取和施行。常常,crontab储存的吩咐被医生和护士进程激活。crond
平日在后台运维,每1分钟检查是还是不是有约定的作业必要执行。那类作业一般称为cron
jobs。

一、crond简介

2 : 命令功用 

由此crontab 命令,我们得以在稳住的间隔时间执行钦命的系统指令或 shell
script脚本。时间间隔的单位能够是分钟、小时、日、月、周及以上的四意组合。这几个命令拾叁分设合周期性的日记分析或数据备份等工作。

  全体用户定义的crontab 文件都被保存在/var/spool/cron目录中,其文件名与用户名相同。

crond是linux下用来周期性的履行某种任务或等候处理某个事件的1个医生和医护人员进程,与windows下的陈设任务类似,当安装到位操作系统后,暗中认可会安装此服务工具,并且会活动运转crond进程,crond进程每分钟会定期检查是不是有要实践的职分,要是有要进行的职分,则自动执行该任务。

三 : 命令参数 

  1. -u user:用来设定有些用户的crontab服务,例如,“-u
    ixdba”表示设定ixdba用户的crontab服务,此参数1般有root用户来运维。

  2. file:file是命令文件的名字,表示将file做为crontab的职分列表文件并载入crontab。若是在指令行中未有点名那个文件,crontab命令将接受规范输入(键盘)上键入的通令,并将它们载入crontab。

  3. -e:编辑有个别用户的crontab文件内容。倘诺不钦命用户,则代表编辑当前用户的crontab文件。(常用)

  4. -l:显示有些用户的crontab文件内容,借使不点名用户,则代表显示当前用户的crontab文件内容。(常用)

  5. -r:从/var/spool/cron目录中去除某些用户的crontab文件,假使不点名用户,则暗许删除当前用户的crontab文件。

  6. -i:在剔除用户的crontab文件时给确认提醒。

下边是七个最常用的授命: 
crontab -l 查看当前的职务列表,其实正是crontab文件的始末 
crontab -e 打开定时职务列表文件,进行编辑

  使用控制文件如下:

Linux下的职务调度分为两类,系统任务调度和用户职务调度。

四 : crontab文件表达 

用户所确立的crontab文件中,每1行都意味一项职责,每行的各类字段代表1项设置,它的格式共分为八个字段,前5段是光阴设定段,第四段是要实践的命令段,格式如下:

minute hour day month week command

其中:

  1. minute: 表示分钟,能够是从0到59里边的别样整数。
  2. hour:表示时辰,能够是从0到二3以内的其余整数。
  3. day:表示日期,能够是从壹到3第11中学间的别样整数。
  4. month:表示月份,能够是从一到1二里头的其余整数。
  5. week:表示星期几,能够是从0到7时期的别的整数,那里的0或7代表星期6。
  6. command:要推行的授命,能够是系统命令,也足以是自个儿编辑的台本文件。

事实上用一张图就能越来越好通晓了 
美高梅手机版4858 2

    黑名单:/etc/cron.deny  该公文中所列用户不允许选择crontab命令

系统职务调度:系统周期性所要执行的做事,比如写缓存数据到硬盘、日志清理等。在/etc目录下有一个crontab文件,那一个就是系统职务调度的配置文件。

五 : 常用实例 

实例壹:每一分钟实施一次command 
命令: 
* * * * * command

实例贰:每小时的第3和第三伍分钟实施 
命令: 
3,15 * * * * command

实例三:在早晨八点到1壹点的第壹和第36分钟实施 
命令: 
3,15 8-11 * * * command

实例四:每隔二日的深夜八点到11点的第2和第一4分钟实施 
命令: 
3,15 8-11 */2 * * command

实例5:各个星期1的中午八点到1一点的第二和第一四分钟实施 
命令: 
3,15 8-11 * * 1 command

实例6:每晚的21:30重启smb 
命令: 
30 21 * * * /etc/init.d/smb restart

实例7:每月1、10、22日的4 : 45重启smb 
命令: 
45 4 1,10,22 * * /etc/init.d/smb restart

实例8:每周六、周日的1 : 10重启smb 
命令: 
10 1 * * 6,0 /etc/init.d/smb restart

实例玖:每一天18 : 00至2三 : 00之内每隔二五分钟重启smb 
命令: 
0,30 18-23 * * * /etc/init.d/smb restart

实例10:每星期伍的夜间1一 : 00 pm重启smb 
命令: 
0 23 * * 6 /etc/init.d/smb restart

实例1一:每一钟头重启smb 
命令: 
* */1 * * * /etc/init.d/smb restart

实例1二:上午1一点到深夜7点之内,每隔1钟头重启smb 
命令: 
* 23-7/1 * * * /etc/init.d/smb restart

实例一三:每月的四号与周周一到周陆的1一点重启smb 
命令: 
0 11 4 * mon-wed /etc/init.d/smb restart

实例1四:十月1号的四点重启smb 
命令: 
0 4 1 jan * /etc/init.d/smb restart

实例15:每30秒执行/etc/cron.hourly目录内的脚本 
命令: 
*/1 * * * * root run-parts /etc/cron.hourly 
*/1 * * * * sleep 30s ; root run-parts /etc/cron.hourly

 

转:

    白名单:/etc/cron.allow  该文件中所列用户同意利用crontab命令

/etc/crontab文件蕴含下边几行:

  Ubuntu下默许未有那多少个文件,1般也不用,暗中同意全数用户均可采纳crontab命令。那七个利用控制文件的格式都以每行1个用户,三个文件都不允许空格。如果应用控制文件被改动了,cron守护进程(crond)不必被重启。使用控制文件在历次用户增进或删除壹项cron任务时都会被读取。无论使用控制文件中的规定何以,root都总是能够使用cron。假设cron.allow文件存在,唯有在那之中列出的用户才被允许利用
cron,并且 cron.deny 文件会被忽视。假使 cron.allow 文件不存在,全部在
cron.deny 中列出的用户都被禁止采纳 cron。

[root@localhost ~]# cat /etc/crontab 

  用户若新增调度能够输入crontab
-e命令建立和谐的crontab文件,也得以在/etc/crontab文件中加上,注意编辑权限。

SHELL=/bin/bash

 

PATH=/sbin:/bin:/usr/sbin:/usr/bin

二,crontab职分格式

MAILTO=””HOME=/

  crontab文件中,每一行都表示一项任务,每行的各种字段代表一项设置,它的格式共分为两个字段,前5段是岁月设定段,第伍段是要履行的命令段,格式如下:

# run-parts

  minute   hour   day   month   week   command

51 * * * * root run-parts /etc/cron.hourly

  其中:

24 7 * * * root run-parts /etc/cron.daily

minute: 表示分钟,能够是从0到5玖里边的别样整数。

22 4 * * 0 root run-parts /etc/cron.weekly

hour:表示小时,能够是从0到二3期间的其他整数。

42 4 1 * * root run-parts /etc/cron.monthly

day:表示日期,能够是从一到3一里头的其余整数。

[root@localhost ~]#

month:表示月份,可以是从1到1贰之内的别样整数。

前4行是用来配置crond任务运行的环境变量,第三行SHELL变量钦赐了系统要采用哪个shell,那里是bash,第1行PATH变量钦命了系统执行命令的途径,第2行MAILTO变量钦命了crond的天职执行消息将透过电子邮件发送给root用户,如若MAILTO变量的值为空,则代表不发送任务履行新闻给用户,第5行的HOME变量钦命了在执行命令或许脚本时使用的主目录。第陆至玖行表示的意义将在下个小节详细描述。这里不在多说。

week:表示星期几,能够是从0到7里头的别的整数,那里的0或柒代表星期一。

用户职责调度:用户定期要进行的工作,比如用户数据备份、定时邮件提醒等。用户能够运用 crontab 工具来定制自身的铺排任务。全数用户定义的crontab 文件都被封存在 /var/spool/cron目录中。其文件名与用户名相同。

command:要履行的下令,能够是系统命令,也可以是温馨编写的剧本文件。

使用者权限文件:

美高梅手机版4858 3

文件:

  在以上各种字段中,还足以应用以下特殊字符:

/etc/cron.deny

    星号(*):代表享有希望的值,例如month字段如若是星号,则代表在满足其余字段的掣肘条件后每月都执行该命令操作。

说明:

    逗号(,):能够用逗号隔开的值钦定一个列表范围,例如,“一,二,伍,7,8,玖”

该公文中所列用户分裂意选取crontab命令

    中杠(-):能够用整数之间的中杠表示二个平头限制,例如“二-陆”表示“二,3,肆,5,陆”

文件:

    正斜线(/):能够用正斜线钦赐时间的间隔频率,例如“0-23/二”表示每两小时实施一次。同时正斜线可以和星号一起行使,例如*/十,要是用在minute字段,表示每十分钟实施贰回。

/etc/cron.allow

 

说明:

3,cron服务

该公文中所列用户同意行使crontab命令

  Ubuntu系统暗许安装cron服务。CentOS须要yum install crontabs手动安装,且服务名称叫crond。

文件:

  服务操作表达:

/var/spool/cron/

    service cron start   //运转服务

说明:

    service cron stop   //关闭服务

持有用户crontab文件存放的目录,以用户名命名

    service cron restart  //重启服务

crontab文件的含义:

    service cron reload    //重新载入配置

用户所创设的crontab文件中,每壹行都代表一项职分,每行的每一种字段代表1项设置,它的格式共分为五个字段,前伍段是时间设定段,第5段是要执行的命令段,格式如下:

    service cron status    //查看服务意况

minute   hour   day   month   week   command

  查看cron进程,执行命令:ps aux | grep cron

其中:

 

minute: 表示分钟,能够是从0到5九里面包车型地铁其余整数。

 

hour:表示小时,能够是从0到2三中间的别样整数。

4,crontab命令详解

day:表示日期,能够是从1到31以内的其他整数。

  一)命令格式:

month:表示月份,能够是从一到1二里边的此外整数。

    crontab [-u user] file

week:表示星期几,能够是从0到7之内的任何整数,那里的0或柒意味周2。

    crontab [-u user] [ -e | -l | -r ]

command:要执行的一声令下,能够是系统命令,也得以是投机编写的剧本文件。

  二)命令功用:

美高梅手机版4858 4 

    通过crontab 命令,我们得以在一直的间隔时间执行钦命的种类指令或shell脚本。时间距离的单位能够是分钟、小时、日、月、周及以上的自由组合。这些命令非凡设合周期性的日志分析或数据备份等工作。

在以上各类字段中,仍是能够利用以下特殊字符:

  三)命令参数:

星号(*):代表全部望的值,例如month字段假如是星号,则意味在满意别的字段的钳制条件后每月都履行该命令操作。

    -u user:用来设定有个别用户的crontab服务,例如,“-u ixdba”表示设定ixdba用户的crontab服务,此参数一般有root用户来运作。

逗号(,):能够用逗号隔绝的值钦命二个列表范围,例如,“一,二,5,柒,八,玖”

    file:file是命令文件的名字,表示将file做为crontab的职务列表文件并载入crontab。假使在指令行中未有点名那一个文件,crontab命令将接受专业输入(键盘)上键入的吩咐,并将它们载入crontab。

中杠(-):能够用整数之间的中杠表示四个整数范围,例如“2-陆”表示“二,三,四,5,陆”

    -e:编辑有些用户的crontab文件内容。假诺不钦命用户,则表示编辑当前用户的crontab文件。

正斜线(/):能够用正斜线钦命时间的间隔频率,例如“0-23/二”表示每两小时实施三回。同时正斜线能够和星号一起使用,例如*/拾,若是用在minute字段,表示每11分钟实施2回。

    -l:展现有个别用户的crontab文件内容,即使不钦点用户,则表示呈现当前用户的crontab文件内容。

二、crond服务

    -r:从/var/spool/cron目录中剔除有个别用户的crontab文件,倘诺不钦命用户,则暗许删除当前用户的crontab文件。

安装crontab:

    -i:在剔除用户的crontab文件时给确认提示。

yum install crontabs

  肆)应用示范:

劳动操作表达:

    一编写制定crontab文件内容:crontab
-e

/sbin/service crond start //运转服务

     第壹次选拔使用该命令会让你挑选文本编辑器,一般选拔vim。之后也可采取select-editor更改,也许修改EDITO奥迪Q7环境变量,如:EDITORubicon=vi。

/sbin/service crond stop //关闭服务

     编辑的内容格式详见“二,crontab职责格式”,保存修改后要重启服务来实施新增的任务,sudo service cron restart。

/sbin/service crond restart //重启服务

    二列出crontab文件内容:crontab -l

/sbin/service crond reload //重新载入配置

     平日用来备份crontab,如:crontab -l > /home/mycrontab.bak

翻看crontab服务处境:

    ③删除crontab文件:crontab -r

service crond status

 

手动运转crontab服务:

伍,crontab格式实例

service crond start

  实例1:每壹分钟实施2回command

翻看crontab服务是还是不是已安装为开机运营,执行命令:

  命令:* * * * * command

ntsysv

 

参加开机自动运行:

  实例2:每小时的第二和第二伍分钟实施

chkconfig –level 35 crond on

  命令:3,15 * * * * command

③、crontab命令详解

 

1.命令格式:

实例3:在深夜八点到1①点的第二和第36分钟实施

crontab [-u user] file

命令:3,15 8-11 * * * command

crontab [-u user] [ -e | -l | -r ]

 

②.发令功用:

实例4:每隔二日的早晨八点到1一点的第一和第3四分钟实施

经过crontab 命令,大家能够在稳定的间隔时间执行钦定的体系指令或 shell script脚本。时间间隔的单位能够是分钟、小时、日、月、周及以上的人身自由组合。这么些命令非凡设合周期性的日志分析或数据备份等工作。

命令:3,15 8-11 */2 * * command

三.发令参数:

 

-u user:用来设定有个别用户的crontab服务,例如,“-u ixdba”表示设定ixdba用户的crontab服务,此参数1般有root用户来运作。

实例5:每种星期一的清晨8点到1壹点的第1和第3陆分钟实施

file:file是命令文件的名字,表示将file做为crontab的职责列表文件并载入crontab。若是在命令行中未有点名这一个文件,crontab命令将收受规范输入(键盘)上键入的吩咐,并将它们载入crontab。

命令:3,15 8-11 * * 1 command

-e:编辑某些用户的crontab文件内容。即便不点名用户,则意味编辑当前用户的crontab文件。

 

-l:突显某些用户的crontab文件内容,假若不钦定用户,则意味着展现当前用户的crontab文件内容。

实例6:每晚的21:30重启smb 

-r:从/var/spool/cron目录中除去某些用户的crontab文件,假如不点名用户,则默许删除当前用户的crontab文件。

命令:30 21 * * * /etc/init.d/smb restart

-i:在剔除用户的crontab文件时给确认提示。

 

肆.常用艺术:

实例7:每月1、10、22日的4 : 45重启smb 

一). 创设二个新的crontab文件

命令:45 4 1,10,22 * * /etc/init.d/smb restart

在思量向cron进程提交叁个crontab文件此前,首先要做的一件工作便是设置条件变量EDITO翼虎。cron进程根据它来鲜明使用哪个编辑器编辑crontab文件。九 九 %的UNIX和LINUX用户都选用vi,假设您也是这么,那么你就编写$ HOME目录下的. profile文件,在里头到场这么1行:

 

EDITOR=vi; export EDITOR

实例8:每周六、周日的1 : 10重启smb

下一场保留并脱离。无妨创造三个名称为<user> cron的文书,其中<user>是用户名,例如, davecron。在该文件中进入如下的情节。

命令:10 1 * * 6,0 /etc/init.d/smb restart

     
# (put your own initials here)echo the date to the console every

 

     
# 15minutes between 6pm and 6am

实例九:天天18 : 00至2三 : 00之内每隔二十七分钟重启smb 

     
0,15,30,45 18-06 * * * /bin/echo ‘date’ > /dev/console

命令:0,30 18-23 * * * /etc/init.d/smb restart

    保存并脱离。确信后面四个域用空格分隔。

 

在地点的例证中,系统将每隔壹 6分钟向控制台出口三遍当前时光。假设系统崩溃或挂起,从最后所出示的岁月就能够1眼看出系统是如曾几何时间截止工作的。在有点系统中,用tty1来表示控制台,能够依照真实景况对地点的事例举行对应的改动。为了提交你刚好创设的crontab文件,能够把这一个新创造的文书作为cron命令的参数:

实例十:每一周一的夜间1一 : 00 pm重启smb 

    
$ crontab davecron

命令:0 23 * * 6 /etc/init.d/smb restart

现今该公文已经付出给cron进度,它将每隔壹 五分钟运转一遍。

 

并且,新创立文件的贰个副本已经被放在/var/spool/cron目录中,文件名便是用户名(即dave)。

实例1一:每暂时辰重启smb 

2). 列出crontab文件

命令:* */1 * * * /etc/init.d/smb restart

   为了列出crontab文件,能够用:

 

    
$ crontab -l

实例1二:早上1一点到上午7点之间,每隔最近辰重启smb 

    
0,15,30,45,18-06 * * * /bin/echo `date` > dev/tty1

命令:

您将相会到和方面类似的剧情。能够动用那种措施在$ H O M E目录中对crontab文件做壹备份:

* 23-7/1 * * * /etc/init.d/smb restart

    
$ crontab -l > $HOME/mycron

 

    那样,一旦非常的大心误删了crontab文件,能够用上1节所描述的诀窍急速苏醒。

实例一3:每月的四号与周周1到周天的11点重启smb 

3). 编辑crontab文件

命令:0 11 4 * mon-wed /etc/init.d/smb restart

   倘若希望丰富、删除或编辑crontab文件中的条目,而E D I TO Odyssey环境变量又设置为v i,那么就足以用v i来编排crontab文件,相应的下令为:

 

    
$ crontab -e

实例1肆:一月壹号的四点重启smb 

能够像使用v i编辑其余任何文件那样修改crontab文件并脱离。要是改动了几许条款或添加了新的条规,那么在保存该文件时, c r o n会对其进展供给的完整性检查。如若内部的某些域现身了过量允许范围的值,它会提示您。

命令:0 4 1 jan * /etc/init.d/smb restart

我们在编制crontab文件时,没准会出席新的条条框框。例如,参加上面的一条:

 

   

实例1伍:每时辰执行/etc/cron.hourly目录内的脚本

# DT:delete core files,at 3.30am on 1,7,14,21,26,26 days of each month

命令:01   *   *   *   *     root run-parts /etc/cron.hourly/

    
30 3 1,7,14,21,26 * * /bin/find -name “core’ -exec rm {} \;

证实:如若去掉run-parts这么些参数的话,前边就能够写要运转的有些脚本名,而不是目录名了

于今封存并退出。最棒在crontab文件的每1个条款之上加入一条注释,那样就能够清楚它的意义、运营时刻,更为首要的是,知道那是哪位用户的功课。

 

方今让我们应用前面讲过的crontab -l命令列出它的凡事音信:

   

$ crontab -l 

   

# (crondave installed on Tue May 4 13:07:43 1999)

   

# DT:ech the date to the console every 30 minites

  

0,15,30,45 18-06 * * * /bin/echo `date` > /dev/tty1

   

# DT:delete core files,at 3.30am on 1,7,14,21,26,26 days of each month

   

30 3 1,7,14,21,26 * * /bin/find -name “core’ -exec rm {} \;

4). 删除crontab文件

要删除crontab文件,可以用:

   

$ crontab -r

5). 复苏丢失的crontab文件

如若非常大心误删了crontab文件,倘诺你在协调的$ H O M E目录下还有一个备份,那么能够将其拷贝到/var/spool/cron/<username>,个中<username>是用户名。假使由于权力难题不能够做到拷贝,能够用:

    
$ crontab <filename>

    个中,<filename>是你在$ H O M E目录中副本的文书名。

自家建议你在投机的$ H O M E目录中保留2个该公文的副本。作者就有过类似的经历,有数十四遍误删了crontab文件(因为r键紧挨在e键的右手)。那即是为什么某些系统文书档案建议不要直接编辑crontab文件,而是编辑该公文的一个副本,然后再次提交新的文件。

稍稍crontab的变体有些古怪,所以在利用crontab命令时要那贰个小心。假使遗漏了任何选用,crontab恐怕会打开3个空文件,也许看起来像是个空文件。那时敲delete键退出,不要按<Ctrl-D>,不然你将遗失crontab文件。

五.运用实例

实例一:每一分钟实施一遍command

命令:

* * * * * command

 

实例二:每刻钟的第2和第二5分钟实施

命令:

3,15 * * * * command

 

实例三:在上午八点到11点的第二和第一陆分钟实施

命令:

3,15 8-11 * * * command

 

实例四:每隔两日的深夜8点到1一点的第二和第贰四秒钟实施

命令:

3,15 8-11 */2 * * command

 

实例5:各个星期1的深夜8点到1壹点的第三和第3陆分钟实施

命令:

3,15 8-11 * * 1 command

美高梅手机版4858, 

实例6:每晚的21:30重启smb 

命令:

30 21 * * * /etc/init.d/smb restart

 

实例7:每月1、10、22日的4 : 45重启smb 

命令:

45 4 1,10,22 * * /etc/init.d/smb restart

 

实例8:每周六、周日的1 : 10重启smb

命令:

10 1 * * 6,0 /etc/init.d/smb restart

 

实例9:天天1捌 : 00至二三 : 00里头每隔28分钟重启smb 

命令:

0,30 18-23 * * * /etc/init.d/smb restart

 

实例10:每星期日的夜幕11 : 00 pm重启smb 

命令:

0 23 * * 6 /etc/init.d/smb restart

 

实例1一:每一时半刻辰重启smb 

命令:

* */1 * * * /etc/init.d/smb restart

 

实例1二:早上1一点到早晨7点之内,每隔一钟头重启smb 

命令:

* 23-7/1 * * * /etc/init.d/smb restart

 

实例1叁:每月的4号与每一周1到礼拜2的1壹点重启smb 

命令:

0 11 4 * mon-wed /etc/init.d/smb restart

 

实例1肆:17月壹号的四点重启smb 

命令:

0 4 1 jan * /etc/init.d/smb restart

实例一伍:每小时执行/etc/cron.hourly目录内的脚本

命令:

01   *   *   *   *     root run-parts /etc/cron.hourly

说明:

run-parts这几个参数了,要是去掉那个参数的话,前边就能够写要运营的某部脚本名,而不是目录名了

四、使用注意事项

壹. 瞩目环境变量难点

偶尔我们创造了一个crontab,不过那个职务却惊惶失措自动执行,而手动执行那一个任务却并未有失常态,那种气象相似是出于在crontab文件中尚无铺排环境变量引起的。

在crontab文件中定义四个调度职务时,须要特别注意的二个标题即是环境变量的装置,因为大家手动执行某些义务时,是在近日shell环境下实行的,程序当然能找到环境变量,而系统活动执行职责调度时,是不会加载任何环境变量的,由此,就供给在crontab文件中钦点使时局转所需的拥有环境变量,那样,系统进行职责调度时就不曾难点了。

绝不假定cron知道所急需的特殊条件,它实在并不知道。所以你要保管在shelll脚本中提供具有须要的路线和环境变量,除了部分活动安装的全局变量。所以注意如下三点:

一)脚本中关系文件路径时写全局路径;

二)脚本执行要用到java或任何环境变量时,通过source命令引进环境变量,如:

cat start_cbp.sh

#!/bin/sh

source /etc/profile

export RUN_CONF=/home/d139/conf/platform/cbp/cbp_jboss.conf

/usr/local/jboss-4.0.5/bin/run.sh -c mev &

三)当手动执行脚本OK,可是crontab死活不履行时。那时必须敢于疑忌是环境变量惹的祸,并得以尝尝在crontab中一向引进环境变量化解难题。如:

0 * * * * . /etc/profile;/bin/sh /var/www/java/audit_no_count/bin/restart_audit.sh

二. 留意清理系统用户的邮件日志

每条职分调度执行完成,系统都会将职分输出新闻经过电子邮件的花样发送给当前系统用户,这样一日千里,日志音讯会丰硕大,大概会潜移默化系统的不荒谬化运行,因而,将每条任务拓展重定向处理格外关键。

譬如,能够在crontab文件中安装如下情势,忽略日志输出:

0 */3 * * * /usr/local/apache2/apachectl restart >/dev/null 2>&1

“/dev/null 2>&1”表示先将正式输出重定向到/dev/null,然后将正式错误重定向到正式输出,由于专业输出已经重定向到了/dev/null,由此正式错误也会重定向到/dev/null,那样日志输出难题就缓解了。

三. 系统级职务调度与用户级职责调度

系统级职责调度首要成就系统的片段护卫操作,用户级职务调度主要完结用户自定义的壹部分职责,能够将用户级职务调度放到系统级职分调度来成功(不提议如此做),不过转头却不行,root用户的任务调度操作能够通过“crontab –uroot –e”来安装,也得以将调度使命一贯写入/etc/crontab文件,要求小心的是,假设要定义2个定时重启系统的职分,就不可能不将任务放到/etc/crontab文件,即便在root用户下创办三个定时重启系统的任务也是没用的。

4. 别的注意事项

新创立的cron job,不会马上执行,至少要过二分钟才实施。假如重启cron则立时执行。

当crontab突然失灵时,能够品味/etc/init.d/crond restart化解问题。或许查看日志看有个别job有没有实践/报错tail -f /var/log/cron。

千万别乱运维crontab -r。它从Crontab目录(/var/spool/cron)中除去用户的Crontab文件。删除了该用户的拥有crontab都没了。

在crontab中%是有格外意义的,表示换行的意思。假诺要用的话不能够不实行转义\%,如常常用的date ‘+%Y%m%d’在crontab里是不会履行的,应该换来date ‘+\%Y\%m\%d’。

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图
Copyright @ 2010-2019 美高梅手机版4858 版权所有