用户名: 用QQ登录本站
密 码: 注册
验证码:
首页 软件 编程 笑话 知识 公告 日历 计算器 行情 简化版
文明驾车我带头,文明行路我带头,礼貌让座我带头      

【腾讯云】云产品限时秒杀,爆款1核2G云服务器,首年99元       [公益] 节省一分零钱 献出一份爱心 温暖世间真情      
广告位招租中
2021年 儿童节 23
2021年 端午节 36
2022年 元 旦 237
2022年 春 节 268
 
  • 您现在的位置:首页 >> PHP >> 内容

    linux实现php定时执行cron任务详解

    内容摘要: 我们只需要预先要定时执行的逻辑代码。例如demo.php,代码如下:?phpecho 'Hello';?然后是吧php用shell脚本一封装,在shell脚本中调用demo.php,demo.sh代码如下:#!/bin/bash#if you php install to /usr/local/php//usr/local/php/bin/php /home......

      我们只需要预先要定时执行的逻辑代码。例如demo.php,代码如下:


    <?php

    echo "Hello";

    ?>

    然后是吧php用shell脚本一封装,在shell脚本中调用demo.php,demo.sh代码如下:


    #!/bin/bash

    #if you php install to /usr/local/php/

    /usr/local/php/bin/php /home/xx-user/demo.php

    完成shell脚本的编写之后,确保它有足够的这行权限,例如:/bin/chmod u+x demo.sh.


    然后配置linux上的cronjob,cronjob是linux上默认安装的。如果你的任务是需要按小时、天、周、月来执行的话,那么你直接可以将你的demo.sh脚本拷贝到


    /etc/cron.hourly 、/etc/cron.daily 、/etc/cron.weekly、/etc/cron.monthly 就ok了,这样就可以完成你的任务了 。如果到某个时间点想移除定时任务,那就从上面这些folder中move到其它地方或者直接删除掉就ok了。


    如果你的脚本有特殊的执行时间,例如每个星期的周二,或者是每个月的15号执行。那么你就需要配置属于你自己的cron job.


    关于cron的特殊的配置请参考:http://www.pantz.org/software/cron/croninfo.html


    这里我就按照每天的上午12点到下午的14点钟之间每2分钟运行一次这个脚本,那么配置如下(例如demo.sh是位于/tmp 目录下):


    首先在linux的命令行中执行crontab -e ,然后把规则输入到里面:


    */2 12-14 * * * /tmp/demo.sh


    带输入完成之后按键盘上的“Esc”键,然后输入:wq,编辑页面就退出了。然后你可以用crontab -l 来查看你刚编辑的cron job.


    到此时特殊的cron 也就完成了。例如你刚才是用linux下的demo账户来完成上面的步骤,那么还有一个简单的方法就是直接可以编辑/var/spool/cron/demo 这个文件,可以直接


    修改你的cron job. 例如 :vi /var/spool/cron/demo


    利用OS的方式来管理你的定时任务是很快捷的,而且不用你担心性能的问题,除非你的脚本本身存在一些问题。这样的方式易于维护,可以修改定时执行的计划,也可以轻松的移除和新增其它的定时任务。

      版权声明:本内容来源于互联网,如有侵犯您的版权,请联系站长,本站收到您的信息后将及时处理。


    发布日期:2021/5/1 发布时间:16:14:37 点击:123 录入:齐天大圣
  • 上一篇:PHP实现货币换算的方法
  • 下一篇:php中邮箱email 电话等格式的验证
  • 本类新增
    本类热门文章
    Baidu

    YiJiaCMS V5.1 Build 21.05.08(MSSQL) 闽ICP备05000814号-1
    本空间由景安网络提供,百度云加速提供加速防护
    齐天大圣® 制 作 ©2000-2021
    您正在使用IPV4(3.230.154.160)访问本站 您本次共访问本站 1 次