如何创建Cron作业

时间:2020-02-23 14:38:23  来源:igfitidea点击:

在本教程中,我们将学习在基于UNIX的系统(示例Linux OS)上创建Cron Jobs。

什么是Cron?

它是Unix中基于时间的作业调度程序,例如用于调度重复任务的操作系统。
参与计算机应用程序设置和维护的人员使用cron计划作业,使其在时间,日期或者间隔内定期运行。

Cron工作如何运作?

我们首先为要定期执行的作业创建时间表。
然后,我们将此时间表输入到名为crontab(cron表)的程序中。
crontab使用我们的日程表并将其保存到它管理的配置表中。
当计划要求的适当时间到达时,crontab将作业馈送给执行该作业的Cron。

crontab文件的每一行代表一个作业,由CRON表达式组成。
我们稍后会看到。

计划时间表

创建Cron作业时,我们要做的第一件事是确定时间表,即我们希望执行该作业的频率。
我们可以根据要求安排每天,每周,每月执行的工作。

时间表格式

一个crontab计划由一行上的6个字段组成,并用空格隔开。

格式:分钟小时日月份星期几要执行的命令

Minute takes the value 0 - 59
Hour takes the value 0 - 23
Day takes the value 1 - 31
Month takes the value 1 - 12
Day-of-week takes the value 0 - 7
星期几名称
0周日
1星期一
2星期二
3星期三
4星期四
5星期五
6星期六
7星期日

一些例子

如果我们希望每天早上10点执行cron作业,则可以这样写:

0 10 * * * /command/to/execute

如果我们希望每天在晚上10点执行一项cron作业,请编写:

0 22 * * * /command/to/execute

注意!晚上10点是24小时格式的2200。

如果我们希望表彰在12月31日上午9:30执行,请写:

30 9 31 12 * /command/to/execute

要设置一个每小时执行一次的cron作业,我们编写:

0 * * * * /command/to/execute

要设置一个每2小时执行一次的cron,我们编写:

* */2 * * * /command/to/execute

要将cron作业设置为每3小时执行一次,我们编写:

* */3 * * * /command/to/execute

如果我们想让cron在每个月的7日和21日执行,请编写:

* * 7,21 * * /command/to/execute

如何指定要执行的命令

如果我们希望程序脚本samplecron.php每天早上9点执行,我们将编写以下内容。

0 9 * * * /var/www/html/cron/samplecron.php

记住要提供您希望cron执行的脚本文件的正确路径。

如何列出所有Cron职位?

要列出所有cron作业,请在终端中使用以下命令。

# crontab -l

如何编辑Cron Jobs?

要编辑cron作业,请在终端中使用以下命令。

# crontab -e

示例

#Cronjob File
##DATE: 01-Feb-2015
##CRONJOB: Update Event Status
#DESCRIPTION: This cronjob will execute every hour.
#0 * * * * php /var/www/html/util/crons/event.php

以#开头的行被视为注释并被忽略。