linux定时任务

1.Crontab命令

文件保存在/var/spool/cron

crontab [-u <用户名称>][配置文件] 或 crontab { -l | -r | -e }
-u   #<用户名称> 是指设定指定<用户名称>的定时任务,这个前提是你必须要有其权限(比如说是 root)才能够指定他人的时程表。如果不使用 -u user 的话,就是表示设定自己的定时任务。
-l  # 列出该用户的定时任务设置(全部)。
-r  # 删除该用户的定时任务设置(全部)。
-e  # 编辑该用户的定时任务设置(全部)。

2.命令时间格式

cron的时间不支持秒级,不可以按秒来设置计划任务

例子:
    # 每月的最后1天
    0 0 L * * * [command]

    说明:
    Linux
    *    *    *    *    *		command
    -    -    -    -    -    - 
    |    |    |    |    |    + 表示运行的命令
    |    |    |    |    +----- 星期 0~7(0和7表示星期天)OR sun,mon,tue,wed,thu,fri,sat
    |    |    |    +---------- 月份 1~12 OR jan,feb,mar,apr ...
    |    |    +--------------- 日期 1~31
    |    +-------------------- 小时 0~23(0表示0点)
    +------------------------- 分钟 0~59 每分钟用*或者 */1表示
字段 是否必填 允许值 允许特殊字符 备注
分钟 0–59 * , - /
小时 0 - 23 * , - /
日期 1 - 31 * , - / L L表示每个月最后一天
月份 1–12 * , - /
星期 0 - 7 * , - /

3.案列

1,5可以执行,5,1 运行不了

0 23-7/1 * * *有些不支持,只能写0 23,1,3,5,7 * * *

在线验证

50 7 * * *	# 每天的早上7:50运行
30 21 * * * # 每天的晚上21:30运行
0 23 * * 6	# 每星期六的晚上23:00运行

*/10 * * * *	 # 每10分钟运行一次
*/30 * * * *   # 每半小时运行一次
0-30/5 * * * * # 每小时的0-30分每五分钟运行一次0,5,10,15,20,25,30
0 0 */2 * * 	 # 每2天0点执行一次
30 6 */10 * *  # 每月的1、11、21、31,早上6:30运行一次
0 13 * * 2,4   # 每周二和每周四13点执行


0 23-7 * * *				# 晚上11点到早上7点之间,每隔一小时运行一次
30 1-23/4 * * * 		# 从1点开始,每隔4小时半点执行
# * 23-7/1 * * *		# 晚上11点到早上7点之间,每隔一小时运行一次
10,30,35 1,5 * * *	# 每天1:10,1:30,1:35和5:10,5:30,5:35运行一次
posted @ 2023-01-06 10:27  lxd670  阅读(152)  评论(0编辑  收藏  举报