Unix_Linux系统定时器的应用(案例)

news/2024/7/5 2:36:42

 2014-05-05 Created By BaoXinjian

一、摘要


关于任务定时的命令crontab,在Linux中应用还算常见,这次为了配合开发完成一些辅助功能,以及一些备份更新等脚本,就需要crontab来完成,在windows下也就是一个批处理,linux只是多了一些命令而已。先来看看crontab的介绍:

 

crontab命令常见于Unix和类Unix的操作系统之中,用于设置周期性被执行的指令。

该命令从标准输入设备读取指令,并将其存放于“crontab”文件中,以供之后读取和执行。

通常,crontab储存的指令被守护进程激活, crond常常在后台运行,每一分钟检查是否有预定的作业需要执行。

这类作业一般称为cron jobs。

crontab文件包含送交cron守护进程的一系列作业和指令。

每个用户可以拥有自己的crontab文件;同时,操作系统保存一个针对整个系统的crontab文件,该文件通常存放于/etc或者/etc之下的子目录中,而这个文件只能由系统管理员来修改。

crontab文件的每一行均遵守特定的格式,由空格或tab分隔为数个领域,每个领域可以放置单一或多个数值。

 

二、定时器语法


1. 定时器时间

minute - 从0到59的整数

hour - 从0到23的整数

day - 从1到31的整数 (必须是指定月份的有效日期)

month - 从1到12的整数 (或如Jan或Feb简写的月份)

dayofweek - 从0到7的整数,0或7用来描述周日 (或用Sun或Mon简写来表示)

command - 需要执行的命令(可用as ls /proc >> /tmp/proc或 执行自定义脚本的命令)

 

2. 定时器语法

-e : 执行文字编辑器来编辑crontab,内定的文字编辑器是VI

-r : 删除目前的crontab

-l : 列出目前的crontab(查看专用)

-i : 会和-r 配合使用,在删除当前的crontab时询问,输入y 则删除

注意crontab是分用户的,以谁登录就会编辑到谁的crontab

usage:  crontab [-u user] filecrontab [-u user] [ -e | -l | -r ](default operation is replace, per 1003.2)-e      (edit user's crontab)-l      (list user's crontab)-r      (delete user's crontab)-i      (prompt before deleting user's crontab)-s      (selinux context)

 

3. 定时器示例

30 21 * * * 表示每晚的21:30
45 4 1,10,22 * * 表示每月1、10、22日的4 : 45
10 1 * * 6,0 表示每周六、周日的1 : 10
0,30 18-23 * * * 表示在每天18 : 00至23 : 00之间每隔30分钟
0 23 * * 6 表示每星期六的11 : 00 pm
* */1 * * * 每一小时
* 23-7/1 * * * 晚上11点到早上7点之间,每隔一小时
* 8,13 * * 1-5 从周一到周五的上午8点和下午1点
0 11 4 * mon-wed 每月的4号与每周一到周三的11点
0 4 1 jan * 一月一号的4点

 

4. 定时器服务重启

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

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

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

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

 

三、定时器


Step1. 编译定时器

crontab -e

Step2. 创建定时器

在 12 月内, 每天的早上 6 点到 12 点中,每隔3个小时执行一次

[oracle@gavinprod ~]$ crontab -l
0 6-12/3 * 12 * grep /opt/oracle/diag/rdbms/gavinprod/gavinprod/alert/log.xml >> /home/oracle/backuplog.txt
[oracle@gavinprod ~]$ 

 

Thanks and Regards


http://lihuaxi.xjx100.cn/news/245772.html

相关文章

约瑟夫环 猴子选大王

<? /*** 猴子选大王&#xff1a;一群猴子排成一圈&#xff0c;按1,2,…,n依次编号。* 然后从第1只开始数&#xff0c;数到第m只,把它踢出圈&#xff0c;从它后面再开始数&#xff0c;再数到第m只&#xff0c;在把它踢出去…&#xff0c;* 如此不停的进行下去&#xff0c;直…

linux修改mysql密码sa_数据库sa初始密码

SQL Server之备份和还原系统数据库系统数据库是管理和维护SQL Server所必须的数据库&#xff0c;对服务器实例的运行至关重要。每次进行大量更新后必须备份多个系统数据库&#xff0c;包括master、model、msdb&#xff0c;备份这些系统数据库&#xff0c;就可以在发生系统故障(…

[Java基础] Java如何实现条件编译

条件编译绝对是一个好东西。如在C或CPP中&#xff0c;可以通过预处理语句来实现条件编译。但是在JAVA中却没有预处理&#xff0c;宏定义这些东西&#xff0c;而有时在一些项目中&#xff0c;我们又需要条件编译。那么&#xff0c;在JAVA中&#xff0c;该如何实现条件编译呢&…

《Programming WPF》翻译 第7章 3.笔刷和钢笔

原文:《Programming WPF》翻译 第7章 3.笔刷和钢笔为了在屏幕上绘制一个图形&#xff0c;WPF需要知道你想要为图形填充什么颜色以及如何绘制它的边框。WPF提供了一些Brush类型支持各种绘图样式。Pen类增加这些笔刷以提供边框的厚度和样子。 在这一章&#xff0c;我们将要看一下…

mysql innodb引擎丢失_【MySQL】InnoDB引擎ibdata文件损坏/删除后使用frm和ibd文件恢复数据...

注意&#xff01;此方法只适用于innodb_file_per_table独立表空间的InnoDB实例。此种方法可以恢复ibdata文件被误删、被恶意修改&#xff0c;没有从库和备份数据的情况下的数据恢复&#xff0c;不能保证数据库所有表数据的100%恢复&#xff0c;目的是尽可能多的恢复。恢复数据前…

JXJJOI2018_T1_market

题目描述 某天Lemon去超市买柠檬&#xff0c;他发现货架上有N个柠檬&#xff0c;每个柠檬都有一个重量Wi和价格Ci。 Lemon身上只带了S元钱&#xff0c;因此他想要买一个价格不超过S的柠檬回家&#xff0c;另外&#xff0c;他希望他买的那个柠檬的性价比尽量高。 性价比的定义是…

【转】ubuntu 12.04 下 Vim 插件 YouCompleteMe 的安装

原文网址&#xff1a;http://www.cnblogs.com/jostree/p/4137402.html 作者&#xff1a;jostree 转载请注明出处 http://www.cnblogs.com/jostree/p/4137402.html 1.需要保证vim的版本大于7.3.584&#xff0c;否则的话需要更新vim 可以通过第三方源更新&#xff1a; 在终端输入…

You Only Learn One Representation: Unified Network for Multiple Tasks

You Only Learn One Representation: Unified Network for Multiple Tasks一、引言&#xff08;一&#xff09;、 Explicit deep learning&#xff08;二&#xff09;、Implicit deep learning&#xff08;三&#xff09;、Knowledge modeling(四)、Kernel space alignment二、…