Crontab 定时任务详解

计划任务分2种:

1、  例外性:按一定的周期循环来执行工作,例如每月发薪水、每天一次的工作报告、每天需要的打卡等等;

2、  临时性:指定时间执行的命令,这次做完下次不必做的,例如女朋友的生日、领导检查工作等;

这些计划任务的工作 Linux也都可以帮助我们,例如:每天早6:00要叫我起床(当然是通过音频设备了);下班之前发送一份Email给自己,提醒别忘记发日报等等;

对于周期性的任务用cron命令;

对于临时性的任务用 at 命令;

at命令:在指定的时间执行指定的命令,执行完之后就从系统中取消该命令;

cron命令:在指定的时间周期性的执行指定的命令;

安装crontab:

yum install crontabs

说明:

/etc/init.d/crond start          启动服务

/etc/init.d/crond stop           关闭服务

/etc/init.d/crond restart        重启服务

/etc/init.d/crond reload         重新载入配置

查看crontab服务状态:       /etc/init.d/crondd status

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

加入开机自启动:         chkconfig –level 35 crond on

1、  crontab命令

功能说明:      设置计时器

语法:crontab [-u <用户名称>][配置文件] 或 crontab [-u <用户名称>][-elr]

补充说明: cron是一个常驻服务,它提供计时器的功能,让用户在特定的时间得以执行预设的指令或程序;只要用户会编辑计时器的配置文件,就可以使用计时器的功能;

其配置文件格式如下:

Minute     Hour         Day  Month      DayOFWeek     Command

参数:

-e      编辑该用户的计时器设置;

-l       列出该用户的计时器设置;

-r      删除该用户的计时器设置;

-u<用户名称>          指定要设定计时器的用户名称;

2、  crontab格式

基本格式:    *    *    *    *    *    command

分   时   日   月   周     命令

第1列表示:分钟1~~59 每分钟用*或*/1表示

第2列表示:小时1~~23  (0 表示0点)

第3列表示:日期1~~31

第4列表示:月份1~~12

第5列表示:星期0~~6   (0 表示 星期天)

第6列表示:运行的命令

3、  案例

30 21 * * * /etc/init.d/nginx restart              每晚21:30 重启nginx

45 4 1,10,22 * * /etc/init.d/nginx restart       每月1、10、22日的4:45分 重启nginx

10 1 * * 6,0/etc/init.d/nginx restart            每周六日的1:10 重启nginx

0,30 18-23 * * * /etc/init.d/nginx restart         18点至23点之间每隔30分钟重启nginx

0 23 * * 6 /etc/init.d/nginx restart               每周六的23点重启nginx

* */1 * * * /etc/init.d/nginx restart              每一小时重启nginx

* 23-7/1 * * * /etc/init.d/nginx restart            晚上23点到早上7点之间,每小时重启nginx

0 11 4 * mon-wed /etc/init.d/nginx restart         每月4号的周一到周三 11点重启nginx

0 4 1 jan * /etc/init.d/nginx restart              一月1号的4点重启nginx

*/30 * * * * /usr/sbin/ntpdate 210.72.145.20       每30分钟同步一次时间

时间: 2024-10-05 12:40:47

Crontab 定时任务详解的相关文章

centos crontab 定时任务详解

安装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

crontab定时任务详解

1.安装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 参 数:-e 编辑该用户

Linux 定时任务 Crontab命令 详解

Linux 定时任务 Crontab命令 详解 复制去Google翻译翻译结果

Linux定时任务Crontab命令详解

linux 系统则是由 cron (crond) 这个系统服务来控制的.Linux 系统上面原本就有非常多的计划性工作,因此这个系统服务是默认启动的.另 外, 由于使用者自己也可以设置计划任务,所以, Linux 系统也提供了使用者控制计划任务的命令 :crontab 命令. 一.crond简介 crond 是linux下用来周期性的执行某种任务或等待处理某些事件的一个守护进程,与windows下的计划任务类似,当安装完成操作系统后,默认会安装此服务 工具,并且会自动启动crond进程,cron

【Linux】Linux定时任务Crontab命令详解

linux 系统则是由 cron (crond) 这个系统服务来控制的.Linux 系统上面原本就有非常多的计划性工作,因此这个系统服务是默认启动的.另 外, 由于使用者自己也可以设置计划任务,所以, Linux 系统也提供了使用者控制计划任务的命令 :crontab 命令. 一.crond简介 crond 是linux下用来周期性的执行某种任务或等待处理某些事件的一个守护进程,与windows下的计划任务类似,当安装完成操作系统后,默认会安装此服务 工具,并且会自动启动crond进程,cron

(转)Linux定时任务Crontab命令详解

linux 系统则是由 cron (crond) 这个系统服务来控制的.Linux 系统上面原本就有非常多的计划性工作,因此这个系统服务是默认启动的.另 外, 由于使用者自己也可以设置计划任务,所以, Linux 系统也提供了使用者控制计划任务的命令 :crontab 命令. 一.crond简介 crond 是linux下用来周期性的执行某种任务或等待处理某些事件的一个守护进程,与windows下的计划任务类似,当安装完成操作系统后,默认会安装此服务 工具,并且会自动启动crond进程,cron

linux 定时任务详解

其实定时任务我们经常要用到,比如凌晨备份数据库,跑一些php脚本之类的都需要用到定时任务. 下面我来分析下定时任务的两个命令: at 说明:执行定时任务,只运行一次.并且依赖于atd服务运行 选项: -q queue:将任务放到队列中去,不设置默认即为a队列 -l: 显示所有队列的任务. 相当于atq命令 -d NUM:删除指定号码的任务. 相当于atrm命令 -f FILE:从一个文件中输入替换标准键盘输入 -v:显示任务执行的时间 时间选项: at允许使用一套相当复杂的指定时间的方法.他能够

Linux- Linux自带定时调度Crontab使用详解

Linux自带定时调度Crontab使用详解 在Linux当中,有一个自带的任务调度功能crontab,它是针对每个用户,每个用户都可以调度自己的任务. 示例:每分钟执行一次,将时间写入到指定文件当中 crontab -e //编辑定时任务调度 ###first crontab */1 * * * * /bin/date >> /root/log.txt 列出目前所有的定时任务 crontab -l 删除所有的定时任务 crontab -r 或者在该定时任务前加上"#"注释

Linux 定时重启tomcat及配置定时任务详解

Linux 定时重启tomcat及配置定时任务详解 1.首先编写重启tomcat脚本 #!/bin/sh TOMCAT_PATH=tomcat地址路径/bin echo "TOMCAT_PATH is $TOMCAT_PATH" PID=`ps aux | grep tomcat地址路径 | grep java | awk '{print $2}'` if [ -n "$PID" ]; then echo "Will shutdown tomcat: $P