红联Linux门户
Linux帮助

crontab精确到执行分钟内某一秒执行的方法

发布时间:2016-08-01 15:05:07来源:linux网站作者:傲雪星枫
linux crontab命令可以实现定时执行任务,最小的执行周期是1分钟。
 
执行指定命令默认是当前执行分钟的第0~1秒开始。
 
例如:
test.php
<?php
echo date('Y-m-d H:i:s').PHP_EOL;
?>
 
设置crontab:
* * * * * php /Users/fdipzone/test.php >> /Users/fdipzone/test.log
 
几分钟后查看test.log,内容如下:
2016-07-31 16:35:00
2016-07-31 16:36:01
2016-07-31 16:37:00
2016-07-31 16:38:00
2016-07-31 16:39:00
2016-07-31 16:40:00
可以看到,crontab总是在执行分钟的0~1秒开始执行指定命令。
 
如果想在执行分钟的第30秒执行,只使用crontab命令不能做到,但我们可以加一个sleep命令去延迟执行,使延迟指定秒数后再执行指定命令。
 
例如:
* * * * * sleep 30; php /Users/fdipzone/test.php >> /Users/fdipzone/test.log
 
几分钟后查看test.log,内容如下:
2016-07-31 16:42:31
2016-07-31 16:43:30
2016-07-31 16:44:30
2016-07-31 16:45:30
2016-07-31 16:46:30
2016-07-31 16:47:30
2016-07-31 16:48:31
2016-07-31 16:49:30
实现指定第几秒执行指定命令。
 
本文永久更新地址:http://www.linuxdiyf.com/linux/22910.html