欢迎光临
一个有态度、有温度的分享型博客

Linux定时任务crontab

通过crontab 命令,我们可以在固定的间隔时间执行指定的系统指令或 shell script脚本。时间间隔的单位可以是分钟、小时、日、月、周及以上的任意组合。这个命令非常适合周期性的日志分析或数据备份等工作。

1.命令格式

crontab file [-u user]  用指定的文件替代目前的crontab

crontab - [-u user]     用标准输入替代目前的crontab

crontab -1 [user]       列出用户目前的crontab

crontab -e [user]       编辑用户目前的crontab

crontab -d [user]       删除用户目前的crontab

crontab -c dir          指定crontab的目录。

2.命令参数

  • -u user:用来设定某个用户的crontab服务,如果不加此参数,表示当前用户;
  • file:file是命令文件的名字,表示将file做为crontab的任务列表文件并载入crontab。如果在命令行中没有指定这个文件,crontab命令将接受标准输入(键盘)上键入的命令,并将它们载入crontab;
  • -e:编辑某个用户的crontab文件内容。如果不指定用户,则表示编辑当前用户的crontab文件。
  • -l:显示某个用户的crontab文件内容,如果不指定用户,则表示显示当前用户的crontab文件内容。
  • -r:从/var/spool/cron目录中删除某个用户的crontab文件,如果不指定用户,则默认删除当前用户的crontab文件。
  • -i:在删除用户的crontab文件时给确认提示。

3.crontab的文件格式

基本格式

*  *  *  *  *  command
分  时  日  月  周  命令

格式图解:

Crontab格式

下面是几个常用的实例:

1.每分钟执行一次            
   *  *  *  *  * 

2.每隔一小时执行一次        
   00  *  *  *  * 
   or
   * */1 * * *  (/表示频率)

3.每小时的15和30分各执行一次 
   15,45 * * * * (,表示并列)

4.在每天上午 8- 11时中间每小时 15 ,45分各执行一次
  15,45 8-11 * * * command (-表示范围)

5.每个星期一的上午8点到11点的第3和第15分钟执行
  3,15 8-11 * * 1 command

6.每隔两天的上午8点到11点的第3和第15分钟执行
  3,15 8-11 */2 * * command

4.crond的安装与配置

安装crontab:

yum install crontabs

服务操作说明:

/sbin/service crond start //启动服务

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

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

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

查看crontab服务状态:

service crond status

手动启动crontab服务:

service crond start

查看crontab服务是否已设置为开机启动,执行命令:

ntsysv

加入开机自动启动:

chkconfig –level 35 crond on

参考文章:

  1. http://linuxtools-rst.readthedocs.org/zh_CN/latest/tool/crontab.html ;
  2. http://segmentfault.com/a/1190000002628040 ;

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址