定时任务

本文介绍了定时任务的基本概念,详细讲解了定时任务的相关知识,并通过一个具体的案例——定时发邮件,来展示定时任务的实现过程。
摘要由CSDN通过智能技术生成

定时任务的概念

设定指定的时间周期性执行你的计划或者任务 

crond		# 守护进程       分钟级别  

两种:

	系统级别定时任务:	定时清理文件   收集系统信息  定时切割日志 
	
	用户级别定时任务:	同步时间    定时备份数据 

定时任务相关介绍


crontab			#书写定时任务的命令  

选项:

	-e			#编辑定时任务    ===   vi  /var/spool/cron/root
	
	-l			#查看定时任务    ===   cat  /var/spool/cron/root

1. 语法检查 

2. 方便简单 

#写定时任务的时候需要注意:
	- 写命令的时候需要使用绝对路径,因为配置文件路径的原因容易导致找不到命令。
	- 复杂命令给或者多个命令尽量写到脚本中
	- 定时任务中所有的输出内容全部放到/dev/null
	- 一般周和日不会共存
	- 编辑脚本的时候注意注释,方便查看作用



[root@zzc ~]# ll  /etc/cron*  -d
drwxr-xr-x. 2 root root  21 Jul 29 08:56 /etc/cron.d		#定时任务的统一存放目录 
drwxr-xr-x. 2 root root  57 Jul 29 08:56 /etc/cron.daily	#系统每天执行的定时任务
-rw-------  1 root root   0 Apr 11  2018 /etc/cron.deny		#定时任务的黑名单 
drwxr-xr-x. 2 root root  22 Jul 29 08:56 /etc/cron.hourly	#系统每小时执行的定时任务
drwxr-xr-x. 2 root root   6 Jun 10  2014 /etc/cron.monthly	#系统每月执行的定时任务
-rw-r--r--  1 root root 451 Jun 10  2014 /etc/crontab		#定时任务主配置文件
drwxr-xr-x. 2 root root   6 Jun 10  2014 /etc/cron.weekly	#系统每周执行的定时任务 



[root@zzc ~]# cat /etc/crontab
SHELL=/bin/bash			#定时任务所使用的命令解释器 
PATH=/sbin:/bin:/usr/sbin:/usr/bin		#定时任务所能用到的命令路径
MAILTO=root				#接收邮件 

# For details see man 4 crontabs

# Example of job definition:
# .---------------- minute (0 - 59)		#分钟   
# |  .------------- hour (0 - 23)		#小时  
# |  |  .---------- day of month (1 - 31)	#日期 
# |  |  |  .------- month (1 - 12) OR jan,feb,mar,apr ...	#月份 
# |  |  |  |  .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# |  |  |  |  |			#  周 
# *  *  *  *  * user-name  command to be executed

分时日月周      用户    命令 


#跟定时任务相关的文件 

[root@zzc ~]# ll /var/spool/cron/root		#存放定时任务的配置文件  
total 0

[root@zzc ~]# ll /var/log/cron		#定时任务执行的过程   日志 


[root@zzc ~]# ll /var/spool/mail/	#用户的邮件  



#定时任务的规则 

*	# 每(分时日月周)都执行  

*/5	# 每 5 (分时日月周)执行  每隔多长时间  

1-3		#时间范围  1-3   连续的时间  1点到3点

1,3		#不连续的时间  1点和3点 


00 02 * * *   	#每天的凌晨2点整  

00 02 1 * * 	#每个月的1号凌晨2点整  

00 02 14 2 * 	#每年的2月14日凌晨2点整   

00 02 * * 7 	#每周日的凌晨2点整  

00 02 * 6 5 	#每年的6月份的每周五的凌晨2点整    

00 02 14 * 7 	#每个月的14号或者周日的凌晨2点整

00 02 14 2 7  	#每年的2月份的14号或者周日的凌晨2点整

*/10  02 * * * 	#每天的凌晨2点每隔10分钟  

* * * * *   	#每分钟 

00 00 14 2 *  	#每年的2月份14号的凌晨0点整

*/5 * * * *   	#每隔5分钟 

00 02 * 1,5,8 *  #每年的1和5和8月的每天的凌晨2点整

00 02 1-8 * *   #每个月的1到8号的凌晨2点整

00 21 * * *   	#每天晚上21点整

45 4 1,10,22 * * 	#每个月的1,10,22号 的凌晨4点45分 

45 4 1-10 * *  		#每个月的1到10号的凌晨4点45分

3,15 8-11 */2 * * 	#每个月每隔两天的8到11点的3分和15分的时候 

0 23-7/2 * * *   	#每天的23点到7点的每隔2个小时的整点 

15 21 * * 1-5		#每周一到周五的晚上21点15分

定时任务案例


1. 定时同步系统时间 每分钟同步 
[root@zzc ~]# ntpdate  ntp.aliyun.com
31 Jul 10:27:12 ntpdate[13673]: step time server 203.107.6.88 offset -28797.933639 sec
[root@zzc ~]# date
Fri Jul 31 10:27:18 CST 2020


定时任务最好加上注释  作者  时间 

[root@zzc ~]# crontab  -e
no crontab for root - using an empty one
crontab: installing new crontab
[root@zzc ~]# crontab  -l
#同步系统时间 zzc 20200731_10
* * * * *  ntpdate  ntp.aliyun.com

#修改时间
[root@zzc ~]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值