zoukankan      html  css  js  c++  java
  • linux中定时运行php(每分钟执行一次为例)

    注:使用Crontab定时执行php脚本文件

    1. 安装crontab

    yum install crontabs

    说明:
    /sbin/service crond start //启动服务
    /sbin/service crond stop //关闭服务
    /sbin/service crond restart //重启服务
    /sbin/service crond reload //重新载入配置

    查看crontab服务状态:service crond status

    手动启动crontab服务:service crond start

    查看crontab服务是否已设置为开机启动,执行命令:ntsysv

    加入开机自动启动:
    chkconfig –level 35 crond on

    注:可以使用systemctl list-units命令查看crond服务有没有开启

    2.crontab -e,进入编辑页面,i键进入编辑模式 

    参  数:

    -e  编辑该用户的计时器设置。
    -l  列出该用户的计时器设置。
    -r  删除该用户的计时器设置。
    -u<用户名称>  指定要设定计时器的用户名称。

    crontab 格式:

    基本格式 :

    分钟   小时   日   月   星期   命令

    *        *      *    *     *       *

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

    记住几个特殊符号的含义: 
    “*”代表取值范围内的数字, 
    “/”代表”每”, 
    “-”代表从某个数字到某个数字, 
    “,”分开几个离散的数字 

    本例中执行:* */1 * * *  /usr/bin/php /www/wwwroot/snow/test.php  设置每分钟执行一次test.php文件 Esc->:wq退出保存 (*/1 * * * *也代表每一分钟执行)

    注:/usr/bin/php  //调用php  

      /www/wwwroot/snow/test.php   //需要执行的php文件

     3.可以执行命令:tail -f /var/log/cron可以查看corntab的执行情况(ctrl+c退出)

     

     4.thinkphp 中的实践操作:

        1)控制器:

    namespace appadmincommand;

    use thinkconsoleCommand;
    use thinkconsoleInput;
    use thinkconsoleOutput;
    use thinkDb;
    use thinkLog;

    class AutoTest extends Command
    {
    protected function configure()
    {
    $this->setName('autoTest')->setDescription("定时任务测试");
    }

    //调用这个类时,会自动运行execute方法
    protected function execute(Input $input, Output $output)
    {
    $output->writeln('Date Crontab job start...');
    /*** 这里写计划任务列表集 START ***/

    /**需要执行的代码**/

    /*** 这里写计划任务列表集 END ***/
    $output->writeln('Date Crontab job end...');
    }
    }

    2)command.php中加入:
    return [
    'appadmincommandAutoTest',
    ];

    3)定时任务:
    */1 * * * * sudo -u www /www/server/php/72/bin/php /www/wwwroot/project/think autoTest

     参考链接:https://blog.csdn.net/jueyan520/article/details/86242257  (感谢分享)

                      https://www.cnblogs.com/jingmin/p/9687905.html(感谢分享)

         https://blog.csdn.net/zixuan701/article/details/88536003 (感谢分享)

  • 相关阅读:
    Redhat Lighttpd安装配置
    PHP正则表达式学习参考的文章
    50点提高PHP编程效率 引入缓存提升性能
    位运算符C语言
    Redhat Mongodb学习笔记
    Redhat Cacti安装配置
    HTTP 状态代码表示什么意思?
    map容器对象插入数据的4种方式
    socket网络间通信初识
    仿美团项目-第一部分
  • 原文地址:https://www.cnblogs.com/luqiang213917/p/11770002.html
Copyright © 2011-2022 走看看