一.linux定时任务软件种类 .at : 适合执行一次的任务。突发性的任务。需要启动 atd 服务才能执行任务。 .crontab: 周期性的执行任务工作:启动crond 服务后可以执行任务。最常用到的任务。 .anacron : 已天为周期后者在系统每次开机之后执行的任务工作

一.linux定时任务软件种类

1.at:适合执行一次的任务。突发性的任务。需要启动atd服务才能执行任务。

2.crontab:周期性的执行任务工作:启动crond服务后可以执行任务。最常用到的任务。

3.anacron:已天为周期后者在系统每次开机之后执行的任务工作。他会检测我们在停机之间应该被执行但是没有被执行的任务,将该任务执行一次。

二、crontab定时任务

1.语法

[root@backup-Dextra]#crontab--help
crontab:invalidoption---
crontab:usageerror:unrecognizedoption
usage:crontab[-uuser]file
crontab[-uuser][-e|-l|-r]
(defaultoperationisreplace,per1003.2)
-e(edituser'scrontab)
-l(listuser'scrontab)
-r(deleteuser'scrontab)
-i(promptbeforedeletinguser'scrontab)
-s(selinuxcontext)

/var/spool/cron/系统定时任务配置文件路径:查看、编辑定时任务都放在此目录下,已当前用户命名。

用户的定时任务规则一般分为6个段(前5段时间、6段是命令或者是脚本),每段用空格分隔(系统分为7段)

特殊符号

*:表示任意时间都

-:表示一个时间段1-5代表12345

,:表示分隔时间段

/n分隔n单位时间1/5代表每五分钟。

注意:日和周不要同时使用,否则达不到效果。

小结:书写定时任务要领

1.加必要注释

2.执行脚本前加/bin/sh可以有执行权限

3.在制定用户下执行相关定时任务crontab–uwyg–l

4.定时任务结尾加>/dev/null2>&1

5.生产任务不要打印输出去掉-v

6.定时任务或程序最好写到脚本里面执行

技巧:命令程序要用绝对路径

脚本中用到系统的环境变量要重新定义

7.定时任务执行的脚本要规范路径(/server/scripts/)

8.配置优秀定时任务过程

1)命令行执行命令命令成功后复制到脚本;

2)测试脚本,成功后复制脚本路径配置定时任务,不要手工输入;

3)测试环境先测试,然后正式上线;

三.系统定时任务

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

SHELL=/bin/bash

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

MAILTO=root

HOME=/

#Fordetailsseeman4crontabs

#Exampleofjobdefinition:

#.----------------minute(0-59)

#|.-------------hour(0-23)

#||.----------dayofmonth(1-31)

#|||.-------month(1-12)ORjan,feb,mar,apr...

#||||.----dayofweek(0-6)(Sunday=0or7)ORsun,mon,tue,wed,thu,fri,sat

#|||||

#*****user-namecommandtobeexecuted

接目录加run-parts/etc/cron.hourly目录内的可执行文件都会被执行。

利用系统配置文件/etc/crontab配置用户任务

*****rootrun-parts/etc/cron.hourly

四.生产场景如何调试定时任务

1.把任务执行频率快一些:每分钟5分钟。。。。。。。。。。。

强调:有些任务不允许频繁执行的,例如:定时往数据库插入数据,先在测试机上。

2.用正确的执行任务时间,设置完成后,可以修改下系统当前时间:生产环境部不可以

3.通过日志输出来调试定时任务追加到日志文件就可以了。有重定向了就不能定义到空

4.注意一些任务命令带来的问题

5.注意环境变量导致的定时任务故障(命令也要全路径)

6.通过定时任务Crond日志调试任务

五.crontab定时任务生产应用问题

1.环境变量问题

2.任务路径问题使用绝对路径

3.脚本权限问题脚本前加/bin/sh

4.时间变量问题“date+\%y\%m\%d”%写在脚本中不用转义

5.>.dev/null2>&1问题

6.定时任务加注释

7.用脚本程序替代命令行

8.避免不必要的程序输出:例如tar–zcvf中的V去掉

9.切到目标目录的上一级目录打包

10.定时任务中的脚本程序命令用全路径:如果环境变量重新定义了,就不需要了

linux下定时任务的更多相关文章

  1. Linux下定时任务配置-crontab

    实际中经常有一些任务需要定期执行,人工操作比较麻烦,如果定时执行将会省去很多人力,还可以在一些资源占用不多的时间段执行,linux下crontab命令就实现了这一便捷的功能,实现脚本的自动化运行. 常 ...

  2. linux下定时任务的工具crontab的用法

    Linux计划任务工具cron用法详解 linux下大名鼎鼎的计划任务工具crontab的使用介绍baidu.google上多得让人眼花缭乱,本着“天下文章一大抄”的觉悟,加上本人日常工作中总结的使用 ...

  3. linux下定时任务设置

    原文http://www.blogjava.net/freeman1984/archive/2010/09/23/332715.html 觉这篇文章写的挺全的,把它拿过来存在博客里,方便以后查询. 为 ...

  4. Linux下定时任务的查看及取消

    crontab -l 表示列出所有的定时任务 crontab -r 表示删除用户的定时任务,当执行此命令后,所有用户下面的定时任务会被删除,执行crontab -l后会提示用户:“no crontab ...

  5. linux下定时任务的简单示例

    1.方式一:用sleep实现定时任务: 1.1 编辑shell脚本,如下sleep_aa.sh: #!/bin/bash t1=`date "+%Y-%m-%d %H:%M:%S" ...

  6. linux下定时任务的使用

    使用方法 执行crontab -e命令会进入一个可编辑界面,在该界面中我们可以制定定时任务,然后保存退出(wq) 格式如下: 由于直接运行编辑命令后只是一个空白界面,不够友好,所以建议使用以下方式来增 ...

  7. Linux下定时任务Crontab的使用

    使用crontab你可以在指定的时间执行一个shell脚本或者一系列Linux命令.例如系统管理员安排一个备份任务使其每天都运行   入门 # crontab –e 这样可以已编辑模式打开个人的cro ...

  8. linux下添加定时任务

    linux下定时任务文件在/etc/crontab 直接vim /etc/crontab 打开就行 在crontab文件中如何输入需要执行的命令和时间.该文件中每行都包括六个域,其中前五个域是指定命令 ...

  9. linux下crontab的使用实现

    1 crontab实现定时任务 1.1服务状态 /sbin/service crond status 查看定时任务的服务是否启动 参数:start 启动服务      Stop 停止服务      R ...

随机推荐

  1. Xamarin.Forms WebView

    目前本地或网络的网页内容和文件加载 WebView是在您的应用程序显示Web和HTML内容的视图.不像OpenUri,这需要用户在Web浏览器的设备上,WebView中显示您的应用程序内的HTML内容 ...

  2. 【转】Android 带checkbox的listView 实现多选,全选,反选 -- 不错

    原文网址:http://blog.csdn.net/onlyonecoder/article/details/8687811 Demo地址(0分资源):http://download.csdn.net ...

  3. 【转】(DT系列六)devicetree中数据和 struct device有什么关系

    原文网址:http://www.cnblogs.com/biglucky/p/4057499.html devicetree中数据和structdevice有什么关系 总体来说,devicetree与 ...

  4. 调用test case集,并生成测试报告

    结构是 test_all.py 进行配置,执行所有测试用例集,并合并测试报告到同一个文件 #test_all.py 进行配置,执行所有测试用例集 # coding = utf-8 from time ...

  5. HDOJ(HDU) 2083 简易版之最短距离(中位数)

    Problem Description 寒假的时候,ACBOY要去拜访很多朋友,恰巧他所有朋友的家都处在坐标平面的X轴上.ACBOY可以任意选择一个朋友的家开始访问,但是每次访问后他都必须回到出发点, ...

  6. <a>标签的href属性

    <a> 标签的 href 属性用于指定超链接目标的 URL. 语法 <a href="value"> 属性值 值 描述 URL 超链接的 URL.可能的值: ...

  7. uploadify在struts2下的使用

    1.首先准备uploadify上传插件包,拷贝到项目目录下 2.注意其中的特殊文件:uploadify-init.js文件,是包含了封装后的特殊函数: /** * uploadify上传插件相关JS ...

  8. django 执行原始SQL

    二.知识点总结 When the model query APIs don’t go far enough, you can fall back to writing raw SQL. go far ...

  9. Android Spinner列表选择框

    Spinner Spinner是一个下拉列表,通常用于选择一系列可选择的列表项,它可以使用适配器,也可以直接设置数组源. 1.直接设置数组源 在res/values/strings.xml中设置数组源 ...

  10. 桌面环境与桌面搜索Desktop Search tools

    最近一段时间工作重心都将放在Linux下Desktop search(桌面搜索)框架的研发上.因此对desktop search进行了初步的调研.本文将从下面三个方面展开: Linux桌面环境(Des ...