热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

怎么在Linux中使用crontab命令设置定时周期性执行任务

这期内容当中小编将会给大家带来有关怎么在Linux中使用crontab命令设置定时周期性执行任务,文章内容丰富且以专业的角度为大家分析和叙述,阅读完

这期内容当中小编将会给大家带来有关怎么在Linux中使用crontab命令设置定时周期性执行任务,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

从linux帮助中查看crontab命令有以下参数:

怎么在Linux中使用crontab命令设置定时周期性执行任务

-u username:指定用户操作定时器
-e:编辑定时器(所有)
-l:查看定时器
-r:删除定时器(从/var/spool/cron目录中删除某个用户的crontab文件,默认删除当前用户的)
-i:删除定时器(删除之前给出确认提示)

使用场景1:

执行一些周期性统计的业务操作,例如每天凌晨0:00统计前一天所有业务员及各个小组的业绩、每组人数、任务量、完成量等等,并插入数据库方便查看

使用场景2:

代替人工执行一些循环往复的操作,例如当时女朋友考研坐等分数线公布,写了一个定时程序,实时监听研招网的新闻头条,同时对接短信验证码平台,只要新闻头条的标题变化了,就发送短信到手机上。

(下面以场景2为例使用crontab命令)

要执行的jianting.php代码:

(.*?)<\/h5>|i&#39;,$info,$m);//正则匹配头条标题内容
  if($m[1] != &#39;2018年全国硕士生招生调剂意向采集服务系统&#39;) { //标题改变了
    //判断日志中是否已有记录,如果为空记录一条,并发送短信或邮件通知
    $str = file_get_contents($log);
    $str = trim($str);
    $bom = pack(&#39;H*&#39;,&#39;EFBBBF&#39;);
    $str = preg_replace("/^$bom/", &#39;&#39;, $str);//去除BOM
    if($str == ""){
      $text = &#39;监听有变化&#39;;   
      file_put_contents($log,$text,FILE_APPEND);
      //发送短信或邮件操作
      ......
    }
  }

linux下使用which命令查看php安装路径:

which php

怎么在Linux中使用crontab命令设置定时周期性执行任务

设置定时任务,这里盗了一张网上的图(crontab格式说明):

怎么在Linux中使用crontab命令设置定时周期性执行任务

crontab -e

//执行周期 php安装路径 执行的php文件(注意设置可执行权限)
例如: 5 0 * * * /usr/bin/php /var/www/html/jianting.php //每天凌晨5分执行

10秒执行一次的写法举例:

* * * * * /usr/bin/php /var/www/html/jianting.php
* * * * * sleep 10; /usr/bin/php /var/www/html/jianting.php
* * * * * sleep 20; /usr/bin/php /var/www/html/jianting.php
* * * * * sleep 30; /usr/bin/php /var/www/html/jianting.php
* * * * * sleep 40; /usr/bin/php /var/www/html/jianting.php
* * * * * sleep 50; /usr/bin/php /var/www/html/jianting.php

此时查看已经有了定时任务:

crontab -l

怎么在Linux中使用crontab命令设置定时周期性执行任务

重启crontab服务

service crond restart

换了个服务器,遇到无法执行php文件的问题,解决办法:

5 0 * * * /usr/bin/curl http://www.xxx.com/jianting.php //使用curl命令访问php文件
5 0 * * * cd /var/www/html && /usr/bin/php /var/www/html/jianting.php

什么是Linux系统

Linux是一种免费使用和自由传播的类UNIX操作系统,是一个基于POSIX的多用户、多任务、支持多线程和多CPU的操作系统,使用Linux能运行主要的Unix工具软件、应用程序和网络协议。

上述就是小编为大家分享的怎么在Linux中使用crontab命令设置定时周期性执行任务了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注编程笔记行业资讯频道。


推荐阅读
  • 分布式开源任务调度框架 TBSchedule 深度解析与应用实践
    本文深入解析了分布式开源任务调度框架 TBSchedule 的核心原理与应用场景,并通过实际案例详细介绍了其部署与使用方法。首先,从源码下载开始,详细阐述了 TBSchedule 的安装步骤和配置要点。接着,探讨了该框架在大规模分布式环境中的性能优化策略,以及如何通过灵活的任务调度机制提升系统效率。最后,结合具体实例,展示了 TBSchedule 在实际项目中的应用效果,为开发者提供了宝贵的实践经验。 ... [详细]
  • 本文介绍了如何在 Spring Boot 项目中使用 spring-boot-starter-quartz 组件实现定时任务,并将 cron 表达式存储在数据库中,以便动态调整任务执行频率。 ... [详细]
  • 前言crontab是Unix和Linux用于设置周期性被执行的指令,是互联网很常用的技术,很多任务都会设置在crontab循环执行,如果不使用crontab,那么任务就是常驻程序,这对你的程序要求比较 ... [详细]
  •   crontab命令用于设置周期性被执行的指令,与windows下的计划任务类似,当安装完成操作系统后,默认会安装此服务工具,并且会自动启动crond进程,crond进程每分钟会定期检查是否有要执 ... [详细]
  • 记录一次ali云线上环境jenkins被攻击挖矿的处理过程
    周六告警一个接一个,感觉极不寻常netstat-anpd执行结果如下久违的中毒感觉,查看一下各用户下的crontabcatetcpasswd|cut-f1-d:|xargs-I{} ... [详细]
  • CentOS下ProFTPD的安装与配置指南
    本文详细介绍在CentOS操作系统上安装和配置ProFTPD服务的方法,包括基本配置、安全设置及高级功能的启用。 ... [详细]
  • 本文探讨了如何通过Service Locator模式来简化和优化在B/S架构中的服务命名访问,特别是对于需要频繁访问的服务,如JNDI和XMLNS。该模式通过缓存机制减少了重复查找的成本,并提供了对多种服务的统一访问接口。 ... [详细]
  • 本文将从基础概念入手,详细探讨SpringMVC框架中DispatcherServlet如何通过HandlerMapping进行请求分发,以及其背后的源码实现细节。 ... [详细]
  • 本文介绍了一个使用Spring框架和Quartz调度器实现每周定时调用Web服务获取数据的小项目。通过详细配置Spring XML文件,展示了如何设置定时任务以及解决可能遇到的自动注入问题。 ... [详细]
  • 本文介绍了 Linux 系统中用于定期执行任务的 cron 服务及其配置方法。通过 crond 和 crontab 命令,用户可以轻松地安排系统和用户级别的周期性任务。 ... [详细]
  • 如何在Linux系统中利用crontab定时执行Shell脚本任务?
    在Linux系统中,如何实现定时执行任务脚本?在服务器日常运维过程中,经常需要定期执行某些任务,例如数据库备份、日志文件切割等。通过使用crontab工具,可以轻松配置这些周期性任务,确保它们按时自动运行,提高系统管理效率和可靠性。 ... [详细]
  • 用.sh文件来完成任务,但现在有个项目直接用url就行。一般系统不会有crontabShell#安装crontab:yuminstallcronta ... [详细]
  • Linux下怎么使用crontab命令
    本篇内容主要讲解“Linux下怎么使用crontab命令”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Li ... [详细]
  • 1crond服务未启动crontab不是Linux内核的功能,而是依赖一个crond服务,这个服务可以启动当然也可以停止。如果停止了就无法执行任何定时任务了,解决的方法是打开它 ... [详细]
  • 关于定时执行一个PHP文件办法,该如何解决
    后端开发|php教程crontab,windows,PHP,schedule,7302763后端开发-php教程关于定时执行一个PHP文件的方法简搜源码,ubuntu找不到域名,启 ... [详细]
author-avatar
看具戴_370
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有