【操作】【CentOS_7】使用crond定时执行PHP文件

1、认识crond

(1)crond定义
  crond是linux下用来周期性的执行某种任务或等待处理某些事件的一个守护进程,与windows下的计划任务类似,当安装完成操作系统后,默认会安装此服务工具,并且会自动启动crond进程,crond进程每分钟会定期检查是否有要执行的任务,如果有要执行的任务,则自动执行该任务。
  crontab文件存储在保存cron守护程序的作业列表和其他指令的位置。Crond服务会定期(默认一分钟检查一次)检查系统中是否有要执行的任务工作。

(2)认识crontab文件结构
【操作】【CentOS_7】使用crond定时执行PHP文件_第1张图片
前四行是用来配置crond任务运行的环境变量

第一行SHELL变量指定了系统要使用哪个shell,这里是bash

第二行PATH变量指定了系统执行命令的路径

第三行MAILTO变量指定了crond的任务执行信息将通过电子邮件发送给root用户,如果MAILTO变量的值为空,则表示不发送任务执行信息给用户

第四行的HOME变量指定了在执行命令或者脚本时使用的主目录。第六至九行表示的含义将在下个小节详细讲述。这里不在多说。

后面的是crond任务计划书写格式

【操作】【CentOS_7】使用crond定时执行PHP文件_第2张图片
  用户所建立的crontab文件中,每一行都代表一项任务,每行的每个字段代表一项设置,它的格式共分为六个字段,前五段是时间设定段,第六段是要执行的命令段,格式如下:

minute  hour  day  month  week  command

字段 解释
minute 表示分钟,可以是从0到59之间的任何整数
hour 表示小时,可以是从0到23之间的任何整数
day 表示日期,可以是从1到31之间的任何整数
month 表示月份,可以是从1到12之间的任何整数
week 表示星期几,可以是从0到7之间的任何整数,这里的0或7代表星期日
command 要执行的命令,可以是系统命令,也可以是自己编写的脚本文件

(3)使用者权限文件

文件 说明
/etc/cron.deny 该文件中所列用户不允许使用crontab命令
/etc/cron.allow 该文件中所列用户允许使用crontab命令
/var/spool/cron/ 所有用户crontab文件存放的目录,以用户名命名

2、配置crond环境

(1)CentOS7默认已经安装crontab,如若没有安装,执行下面命令

yum install crontabs

(2)开启crond服务

systemctl start crond

(3)crond服务自启动

systemctl enable crond

3、上传PHP文件

(1)打开WinSCP软件远程服务器

【操作】【CentOS_7】使用crond定时执行PHP文件_第3张图片

(2)将提前写好的PHP文件拖到右半侧的目录中代码以及结果如下


【操作】【CentOS_7】使用crond定时执行PHP文件_第4张图片

4、制定任务计划并验证是否执行

(1)输入下面指令制定任务计划

crontab -e

(2)输入下面命令之后输入:wq!保存文件

【操作】【CentOS_7】使用crond定时执行PHP文件_第5张图片

(3)重启crond服务

service crond restart

(4)查看任务计划表

crontab -l

(5)之前的数据表内容如下
【操作】【CentOS_7】使用crond定时执行PHP文件_第6张图片

(6)一段时间后,查看数据表内容

【操作】【CentOS_7】使用crond定时执行PHP文件_第7张图片

上面可以看出PHP文件已经执行了四次,说明任务计划正在实行

你可能感兴趣的:(虚拟机)