Linux 定时任务 Crontab按秒执行

目前在crontab中最小执行时间单位为分钟。

如果需要按秒来执行,有以下两种方法:

方法一:通过sleep来实现

例:

1、创建test.php文件,这里测试通过打印时间好区分。

<?php
    file_put_contents(‘log.txt‘,date(‘Y-m-d H:i:s‘) . "\n", FILE_APPEND);
?>

2、确保单独访问test.php文件能打印日志。

3、编辑crontab文件,通过crontab -e 命令,比如我要每15秒运行一次,内容如下:

* * * * * curl "http://127.0.0.1/testtask/test.php" && sleep 15;curl "http://127.0.0.1/testtask/test.php" && sleep 15;curl "http://127.0.0.1/testtask/test.php" && sleep 15;curl "http://127.0.0.1/testtask/test.php"

4、打印结果,可以通过 tail -f log.txt 命令实时查看结果。

可以看到每15秒打印出来结果。

方法二:通过添加中间shell脚本来实现

例:

1、添加脚本文件 test.sh,内容如下:我这里是选择2秒执行一次。

step=2 #间隔秒数
for ((i = 0; i < 60; i = (i + step))); do
    $(curl "http://127.0.0.1/testtask/test.php")
    sleep $step
done
exit 0

2、编辑crontab文件

* * * * * /phpstudy/www/testtask/test.sh

3、打印结果

原文地址:https://www.cnblogs.com/woods1815/p/10959223.html

时间: 2024-10-17 11:24:07

Linux 定时任务 Crontab按秒执行的相关文章

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

如何让linux定时任务crontab按秒执行? linux定时任务crontab最小执行时间单位为分钟 如果想以秒为单位执行,应该如何设置呢? 思路 正常情况是在crontab中直接定义要执行的任务,现在我们在中间添加一个脚本文件 自定义一个脚本文件,循环执行要执行的任务,循环中使用sleep来控制间隔秒数 在crontab中添加一个任务,设置为每分钟都执行这个脚本 就是用crontab控制分钟,用脚本内的循环来控制秒 示例 (1) 定义目标任务 用php写了一个测试任务,向文件中写一个时间信

linux定时任务crontab命令讲解

linux定时任务crontab命令讲解 linux 系统则是由 cron (crond) 这个系统服务来控制的.Linux 系统上面原本就有非常多的计划性工作,因此这个系统服务是默认启动的.另 外, 由于使用者自己也可以设置计划任务,所以, Linux 系统也提供了使用者控制计划任务的命令 :crontab 命令. 一.crond简介 crond 是linux下用来周期性的执行某种任务或等待处理某些事件的一个守护进程,与windows下的计划任务类似,当安装完成操作系统后,默认会安装此服务 工

Linux定时任务-crontab

Linux定时任务 crontab linux系统是由cron 这个系统服务来控制的.linux系统上包含很多的计划性工作.使用者自己也可以设置 计划任务,所以Linux系统提供了使用者控制计划任务的命令. crontab的启动 /sbin/service crond status: 查看定时任务的服务是否启动 start/stop/restart: 启动服务/停止服务/重新启动服务 reload: 重新载入配置 crontab的服务权限 crontab的权限管理存储在cron.allow文件与

Linux 定时任务 Crontab命令 详解

Linux 定时任务 Crontab命令 详解 复制去Google翻译翻译结果

linux crontab 每秒执行定时任务

OK,我们都知道Linux的crontab 可以设置定时执行任务 * * * * * 但是最低是每分钟执行一次任务,之前面试陌陌的时候也被问到过每秒执行一次怎么写,依稀记得当时回答的是 */1   ,应该是这样的......好傻......... 网上找了一些,记录一下吧. 下面就可以每十秒执行一次了,仔细想一下,是这样的把? #* * * * * php /Users/zhangfulin/testsz.php #* * * * * sleep 10; php /Users/zhangfuli

Linux 定时任务crontab

在使用Linux时候,经常需要执行定时任务,使用crontab编写一些定时脚本.在这里记录下来,方便以后回忆. 为了方便后来进行使用, 在网上摘抄如下: crond和crontab cron是linux提供的一种服务器,用于定期执行shell命令.主要由两部分组成 crond:cron服务的守护进程,用于定期调度 crontab:cron提供的UI,用于编辑调度计划 crontab的使用方法,大家可以man一下,如下图: 主要有三个选项: “-e”编辑:与vim类是,但是在保存退出时,他会帮你检

Linux 定时任务 crontab

fileclear.sh tamcdir=${HOME}/ora/user_projects/domains/tamc cd ${tamcdir} echo rm -f `ls heapdump*.phd` rm -f heapdump*.phd echo rm -f `ls javacore*.txt` rm -f javacore*.txt echo rm -f `ls Snap*.trc` rm -f Snap*.trc cd bin echo cp /dev/null nuhup.out

小记---------关于linux 定时任务crontab

linux的crontab定时任务    启动服务: service crond start 关闭服务:  service crond stop 重启服务:  service crond restart 服务状态:  service crond status /etc/cron.d/ 这个目录用来存放任何要执行的crontab文件或脚本. 权限问题 crontab权限问题到/var/adm/cron/下一看,文件cron.allow和cron.deny是否存在 用法如下: 1.如果两个文件都不存

crontab每秒执行URL接口

首先crontab -e打开进行编辑 添加以下代码(默认为每秒执行一次脚本crontab.sh): * * * * * /bin/sh /var/www/aa/crontab.sh 下面是/var/www/aa/crontab.sh脚本代码 #!/bin/bash i=0;step=2 #间隔的秒数,不能大于60 while [ $i -lt 60 ]do $(curl 'http://api-test-monitor.shanxinhui.com/user/test2/aa') sleep $