前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >如何让linux定时任务crontab按秒执行?

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

作者头像
dys
发布2018-04-03 11:56:12
3.4K0
发布2018-04-03 11:56:12
举报
文章被收录于专栏:性能与架构性能与架构

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

可以看到按秒打印了信息

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2015-12-01,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 JAVA高性能架构 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档