在linux中输入命令
crontab -e
然后使用vim的命令编辑打开的文件,输入
0 * * * * /usr/bin/php -f /home/userxxx/update.php
保存,退出,好了,现在系统会在每个0点自动执行update.php脚本,脚本中可以编写数据库执行,自动发邮件等功能。
注:直接写成 0 * * * * php -f /home/userxxx/update.php将不会起作用。
另外cronjob的格式为:
MIN HOUR DOM MON DOW CMD
Field | Description | Allowed Value |
---|---|---|
MIN | Minute field | 0 to 59 |
HOUR | Hour field | 0 to 23 |
DOM | Day of Month | 1-31 |
MON | Month field | 1-12 |
DOW | Day Of Week | 0-6(0表示星期天) |
CMD | Command | Any command to be executed. |
使用(-)可以划定范围
如:0 0-6 * * * command 表示每天0-6点整执行command
使用(,)可以枚举时间
如: 0,15,30,45 * * * * command 表示每个小时的0分,15分,45分,30分会执行command
使用(/)可以指定间隔
如:* */4 * * * command表示每四小时执行command
组合用法
0-10/2 * * * * command表示在前10分钟内每隔2分钟执行command
===================================分割线================================================
用Crontab命令定时执行PHP文件详解
一般我在开发中,常用的定时任务有2种。一种是直接调用PHP文件执行,还有一种是调用远程URL地址。
首先,先来亮相一下我们今天的主角,Crontab命令。这个是系统定时命令,作用是定时的去执行一些任务。包含一些系统级别的任务,当然用户也可以直接借用该命令来实现自己的一些计划任务。
该命令一般跟随系统启动,我们可以使用一下命令来查看是否cron是否启动
如果启动了,会返回一个进程id
Crontab文件一般存放于/etc目录下。我们使用,crontab -e
来编辑cron任务。(第一次用这个命令,会让你选择文本编辑器)
打开cron文件,注意观察最后一行 m h dom...这里简要介绍一下它的意思。
- m:分钟,0-59
- h:小时,0-23
- dom:日期,1-31
- mon:月份,1-12
- dow:星期,0-6,0为星期天
- command:命令
这里,我们应该已经知道其大概的用法了。我们只要在对应的位置填写上我们需要的数字日期,就可以使用它来表示:在某月(mon)的某天(dom)或者星期几(dow)的几点(h,24小时制)几分(m)执行某个命令(command)。
举个栗子: