如何让linux定时任务crontab按秒执行?


linux定时任务crontab最小执行时间单位为分钟

如果想以秒为单位执行,应该如何设置呢?

思路

正常情况是在crontab中直接定义要执行的任务,现在我们在中间添加一个脚本文件

自定义一个脚本文件,循环执行要执行的任务,循环中使用sleep来控制间隔秒数

在crontab中添加一个任务,设置为每分钟都执行这个脚本

就是用crontab控制分钟,用脚本内的循环来控制秒

示例

(1) 定义目标任务

用php写了一个测试任务,向文件中写一个时间信息

文件路径 /root/test.php

<?php
file_put_contents('/root/run.log', date('Y-m-d H:i:s')."\r\n", FILE_APPEND);
?>

(2)编写执行任务的脚本

文件路径 /root/test.sh

#!/bin/bash

#间隔的秒数,就是要几秒执行一次

#不能大于60
step=2

for (( i = 0; i < 60; i=(i+step) )); do

$(php '/root/test.php')
sleep $step
done

exit 0

(3)添加定时任务

crontab -e

* * * * * /root/test.sh

重启定时任务服务

service crond restart

(4)查看效果

tail -f /root/run.log

可以看到按秒打印了信息

如何让linux定时任务crontab按秒执行的更多相关文章

  1. Linux 定时任务 Crontab按秒执行

    目前在crontab中最小执行时间单位为分钟. 如果需要按秒来执行,有以下两种方法: 方法一:通过sleep来实现 例: 1.创建test.php文件,这里测试通过打印时间好区分. <?php ...

  2. 如何让Linux定时任务crond以秒为单位执行(如每隔3秒)

    需要用到Shell脚本每隔3秒钟去监控一个软件进程的运行状态,发现crond似乎只支持到分,不知道秒,怎么办呢? 第一种方法: 当然首先想到的是写一个触发的脚本,在触发脚本中使用死循环来解决此问题,如 ...

  3. linux使用crontab实现PHP执行计划定时任务

    linux使用crontab实现PHP执行计划定时任务 前几天写过一篇文章,利用单纯的php实现定时执行任务,但是效率不佳,对于linux来说用crontab实现更加合理 首先说说cron,它是一个l ...

  4. linux定时任务crontab怎样执行root命令

    在/var/spool/cron/文件夹下放置了所有定时任务文件, 1.运行crontab -u $用户名 -e会显示$用户的所有定时任务: 2.运行sudo crontab -e会显示root用户所 ...

  5. Linux 定时任务 Crontab命令 详解

    前言 crontab是Unix和Linux用于设置周期性被执行的指令,是互联网很常用的技术,很多任务都会设置在crontab循环执行,如果不使用crontab,那么任务就是常驻程序,这对你的程序要求比 ...

  6. 【转帖】Linux定时任务Crontab命令详解

    Linux定时任务Crontab命令详解 https://www.cnblogs.com/intval/p/5763929.html 知道有crontab 以及 at 命令 改天仔细学习一下 讲sys ...

  7. Linux定时任务Crontab命令详解_转

    转自:Linux定时任务Crontab命令详解 (部分修改) linux 定时系统则是由 cron (crond) 这个系统服务来控制的.Linux 系统上面原本就有非常多的计划性工作,因此这个系统服 ...

  8. linux定时任务crontab的设置

    linux定时任务crontab的设置http://www.blogjava.net/freeman1984/archive/2010/09/23/332715.html vi /etc/cronta ...

  9. Linux定时任务crontab每三秒执行一次shell

    第一种方法:当然首先想到的是写一个触发的脚本,在触发脚本中使用死循环来解决此问题,如下: cat kick.sh #!/bin/bash while : ;do /home/somedir/scrip ...

随机推荐

  1. Java接口与实例化

    看代码看到 public Runnable r = new Runnable() { @Override public void run() { ... } } 接口不能new ,不过可以生成一个匿名 ...

  2. windows nslookup、tracert 常用命令

    nslookup www.baidu.com 可以指定查询的类型,可以查到DNS记录的生存时间还可以指定使用哪个DNS服务器进行解释. tracert www.baidu.com 路由

  3. wampserver-----------如何设置wampserver在windows下开机自动启动。

    虽然很简单,但是还是做个记录.我的习惯,还是看图: 到你电脑的服务里面找到这两项然后点击右键属性,设置为自动.

  4. 什么是JSP?它有哪些特点?

    什么是JSP? 它有哪些特点?  JSP是服务器端的一种基于java语言的网页技术,它是由一些JSP标记,java程序段以及HTML文件组成的结合体,以java语言作为其内置的脚本语言.  实质上是通 ...

  5. C# 获取sql数据库表列名,及列名说明备注信息

    获取指定表列名及备注: select * from syscolumns where id=object_id(N'表名') SELECT a.name [column], b.name type, ...

  6. 从NSGA到 NSGA II

    NSGA(非支配排序遗传算法).NSGAII(带精英策略的非支配排序的遗传算法),都是基于遗传算法的多目标优化算法,都是基于pareto最优解讨论的多目标优化,遗传算法已经做过笔记,下面介绍paret ...

  7. 解决redmine写操作很慢的问题

    以前刚开始时用redmine是直接使用它的webrick服务器来运行的,后来为了提高性能,采用nginx+passenger的方式来驱动redmine,访问速度快了不少,但是在新建问题或更新问题时变得 ...

  8. MFC通过ODBC方式连接mysql

    一. 要安装mysql-connector-odbc驱动 二. 配置数据源 电脑的控制面板-管理工具-数据源ODBC-系统DSN-添加-选择刚刚安装的mysql odbc Driver 参考 http ...

  9. ReactiveCocoa常见操作方法介绍/MVVM架构思想

      1.ReactiveCocoa常见操作方法介绍. 1.1 ReactiveCocoa操作须知 所有的信号(RACSignal)都可以进行操作处理,因为所有操作方法都定义在RACStream.h中, ...

  10. C#:绘图问题

    1.设置DPI Bitmap bitmap2 = new Bitmap((int)w, (int)h); bitmap2.SetResolution(, ); 2.设置Graphic(如:去锯齿等) ...