如何每5、10或者15分钟运行一次Cron作业
时间:2020-03-05 15:26:26 来源:igfitidea点击:
cron作业是按指定间隔执行的任务。
可以将任务安排为按分钟,小时,每月的某天,某月,某周的某天或者它们的任意组合运行。
Cron作业通常用于自动进行系统维护或者管理,例如备份数据库或者数据,使用最新的安全补丁更新系统,检查磁盘空间使用情况,发送电子邮件等。
每5、10或者15分钟运行一次cron作业是一些最常用的cron时间表。
Crontab语法和运算符
Crontab(cron表)是一个文本文件,用于定义cron作业的计划。
可以使用“ crontab”命令创建,查看,修改和删除Crontab文件。
用户crontab文件中的每一行都包含六个字段,每个字段之间用一个空格分隔,后跟要运行的命令:
* * * * * command(s) ^ ^ ^ ^ ^ | | | | | allowed values | | | | | ------ | | | | ----- Day of week (0 - 7) (Sunday=0 or 7) | | | ------- Month (1 - 12) | | --------- Day of month (1 - 31) | ----------- Hour (0 - 23) ------------- Minute (0 - 59)
前五个字段(时间和日期)还接受以下运算符:
- '*'-星号运算符表示所有允许的值。如果“分钟”字段中有星号,则表示该任务将每分钟执行一次。
- '-'-连字符运算符允许我们指定一个值范围。如果我们在“星期几”字段中将值设置为“ 1-5”,则该任务将在每个工作日(从星期一到星期五)运行。该范围是包括在内的,这意味着该范围内包括第一个和最后一个值。
- ','-逗号运算符使我们可以定义要重复的值的列表。例如,如果“小时”字段中的值为“ 1,3,5”,则该任务将在凌晨1点,凌晨3点和凌晨5点运行。该列表可以包含单个值和范围'1-5,7,8,10-15'
- '/'-斜杠运算符允许我们指定可以与范围结合使用的步长值。例如,如果我们在“分钟”字段中具有“ 1-10/2”,则意味着将每两分钟在1-10范围内执行一次操作,与指定“ 1,3,5,7,9”相同。除了值的范围外,还可以使用星号运算符。要指定每20分钟运行一次的作业,可以使用“ */20”。
系统级crontab文件的语法与用户crontabs略有不同。
它包含一个添加的必填用户字段,该字段指定哪个用户将运行cron作业。
* * * * * <username> command(s)
要编辑crontab文件,或者创建一个不存在的文件,请使用'crontab -e'命令。
每5分钟执行一次Cron作业
每五分钟有两种运行cron作业的方法。
第一种选择是使用逗号运算符创建分钟列表:
0,5,10,15,20,25,30,35,40,45,50,55 * * * * command
上面的行在语法上是正确的,并且可以正常工作。
但是,键入整个列表可能很乏味并且容易出错。
指定每5分钟运行一次作业的第二个选项是使用步骤运算符:
*/5 * * * * command
“ */5”表示创建所有分钟的列表,并为列表中的每五个值运行一次作业。
每10分钟执行一次Cron作业
要每10分钟运行一次cron作业,请在crontab文件中添加以下行:
*/10 * * * * command
每15分钟执行一次Cron作业
要每15分钟运行一次cron作业,请在crontab文件中添加以下行:
*/15 * * * * command