>  기사  >  백엔드 개발  >  Linux crontab 访问PHP URL完成定时任务

Linux crontab 访问PHP URL完成定时任务

WBOY
WBOY원래의
2016-06-20 12:45:131225검색

crontab -e 新建/编辑一个任务
crontab -l 列出所有任务

crontab 格式:

基本格式 :
分钟 小时 日 月 星期 命令
第1列表示分钟1~59 每分钟用或者 /1表示
第2列表示小时1~23(0表示0点)
第3列表示日期1~31
第4列 表示月份1~12
第5列标识号星期0~6(0表示星期天)
第6列要运行的命令

执行PHP脚本:
* * * * * /usr/bin/php -f /root/test.php >> test.log

表示“每隔一分钟执行test.php文件,脚本的结果输出到test.log里”。 注意目录问题。

比如test.php里的代码可以是echo date("Y-m-d H:i:s") \n这种。

由于我是第一次用crontab,测试发现bin/php 这种方式只能单PHP文件可以完成的任务,如果涉及到include,require,要注意路径问题,涉及到“类(class)”似乎就不行了。希望哪位指点一下。

另外需要注意这个脚本需要有执行权限。

而我本人需要完成的任务是定时访问一个文件(链接)去生成sitemap,所以访问URL就不能用bin/php 去完成,而是要用bin/curl。所以我的代码就成了下边这样:

* * * * * /usr/bin/curl http://aa.com:8080/tools/sitemap.php >> /Desktop/untitled.html

关于这个命令里后边的输出,并不是必须的,只是为了方便在写命令的时候调试。

关于crontab命令的参数建议看一下手册,这里只复制了一段查到的资料里提到的。

本站@Jacendfeng 的这篇Linux 下执行定时任务 crontab 命令详解 写的非常详细,建议看一下。

参考资料:
鳥哥的 Linux 私房菜 -- 第十五章、例行性工作排程(crontab)
linux 自动执行 crontab学习笔记
linux定时调用指定url链接,linux crontab定时执行php脚本程序介绍
linux使用crontab实现PHP执行定时任务

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.