全球主机交流论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

CeraNetworks网络延迟测速工具IP归属甄别会员请立即修改密码
12
返回列表 发新帖
楼主: muyang

linux定时任务怎么弄,秒级

[复制链接]
发表于 2018-1-8 22:13:30 | 显示全部楼层
如果不是要求非常精准
crontab sleep就足够了
如果想实现精准 内核开启 hrtimer + 编程
发表于 2018-1-8 22:13:54 | 显示全部楼层
muyang 发表于 2018-1-8 22:12
这就是10秒? 我以为crontab只能设置最低1分钟呢

设置成0分钟 然后让他自己 sleep 10 秒就行了。。
 楼主| 发表于 2018-1-8 22:25:20 | 显示全部楼层
贱人就是矫情 发表于 2018-1-8 22:20
eqblog 没毛病!

* * * * * curl https://eqblog.com

这种写法刚才百度好像看到过,

刚才eqblog 兄弟那种,只写一条,是不是实现不了?

另(curl前面用加路径吗,/usr/bin/curl 之类的)
发表于 2018-1-8 22:25:22 | 显示全部楼层
本帖最后由 tutugreen 于 2018-1-8 22:33 编辑

通俗的:
crontab -e
i(进入编辑模式)
* * * * * timeout 10 /usr/bin/curl http://xxx.com > /dev/null 2>&1
* * * * * sleep 10; timeout 10 /usr/bin/curl http://xxx.com > /dev/null 2>&1
* * * * * sleep 20; timeout 10 /usr/bin/curl http://xxx.com > /dev/null 2>&1
* * * * * sleep 30; timeout 10 /usr/bin/curl http://xxx.com > /dev/null 2>&1
* * * * * sleep 40; timeout 10 /usr/bin/curl http://xxx.com > /dev/null 2>&1
* * * * * sleep 50; timeout 10 /usr/bin/curl http://xxx.com > /dev/null 2>&1

:
v
i(保存退出)
回车



优雅的:
cat>/etc/cron.hourly/job01.sh<<EOF
#!/bin/sh
for ((i=1; i<=360; i++))
do
timeout 10 /usr/bin/curl http://xxx.com > /dev/null 2>&1
sleep 10
done
EOF
chmod +x /etc/cron.hourly/job01.sh

贴到SSH回车就设好了。
发表于 2018-1-8 22:27:17 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
发表于 2018-1-8 22:43:06 | 显示全部楼层
muyang 发表于 2018-1-8 22:25
这种写法刚才百度好像看到过,

刚才eqblog 兄弟那种,只写一条,是不是实现不了?

是的,你如果希望每10秒执行一次,就需要写6条。

这个办法是最粗暴的, 我看也有一些dadiao们提供了更优雅一些的方式。

至于curl命令是否需要完整,这个我建议用完整的
whereis curl 就可以看到命令的完整路径了。
发表于 2018-1-9 03:41:59 | 显示全部楼层
"sleep 10" 就是10秒延时,写个无限循环加上这个,实现起来可比 crontab 简单多了,只不过需要把脚本挂起。
发表于 2018-1-9 03:55:29 | 显示全部楼层
muyang 发表于 2018-1-8 22:25
这种写法刚才百度好像看到过,

刚才eqblog 兄弟那种,只写一条,是不是实现不了?

是写一条只每分10秒的时候执行。。相当于每一分钟执行一次
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|全球主机交流论坛

GMT+8, 2024-5-26 14:49 , Processed in 0.061527 second(s), 8 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表