如何让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

可以看到按秒打印了信息

原文发布于微信公众号 - 性能与架构(yogoup)

原文发表时间:2015-12-01

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏calvin

centos7 升级GCC版本到7.3.0

2.9K30
来自专栏运维小白

19.16 不发邮件的问题处理

不发邮件的问题处理 因为虚拟机,可能存在一些bug,第一次配置的时候,经常会出现zabbix发现问题,做了邮件告警,但是邮箱却没有收到邮件的问题; 重新恢复快照...

21860
来自专栏云计算教程系列

如何在Ubuntu 18.04上安装和配置GitLab

GitLab CE或Community Edition是一个开源应用程序,主要用于托管Git存储库,以及其他与开发相关的功能,如问题跟踪。它旨在使用您自己的基础...

3.6K10
来自专栏我爱编程

基于ubuntu搭建FTP文件服务

69970
来自专栏运维前线

CentOS 7 安装GitLab

CentOS 7 安装GitLab GitLab是一个利用Ruby on Rails开发的开源应用程序,实现一个自托管的Git项目仓库,可通过Web界面进行访...

64880
来自专栏苦逼的码农

Linux养成达人4----一些相对有趣点的网络命令

这个命令的功能可以用来抓包哦。假如有用户来连接我们的Linux,我们就可以抓到各种信息,例如密码之类的。下面我来演示一下。我用window的操作系统来远程连接L...

12020
来自专栏技术博文

Cookie详解整理

1.Cookie的诞生 由于HTTP协议是无状态的,而服务器端的业务必须是要有状态的。Cookie诞生的最初目的是为了存储web中的状态信息,以方便服务器端使用...

35340
来自专栏云计算教程系列

如何在Debian 9上安装和配置GitLab

GitLab CE或Community Edition是一个开源应用程序,主要用于托管Git存储库,以及其他与开发相关的功能,如问题跟踪。它旨在使用您自己的基础...

64020
来自专栏PHP在线

Cookie与Session问答

1.Cookie运行在客户端,Session运行在服务器端,对吗? 不完全正确,Cookie是运行在客户端,有客户端进行管理;Session虽然运行在服务器端...

28130
来自专栏木子墨的前端日常

微信页面入口文件被缓存解决方案

缓存对于前端页面来说,是加速页面加载的利器之一,但也同时带来了很多问题,比如新版本发布之后,怎么替换客户端上的缓存文件呢?大家一般的的解决方案主要有以下几种形式...

1.2K20

扫码关注云+社区

领取腾讯云代金券