定时任务crontab如何实现每秒执行?

linux crontab 命令,最小的执行时间是一分钟。如需要在小于一分钟内重复执行,可以有两个方法实现。

方法一:crontab -l内容如下,则每10秒执行一次/home/fdipzone/php/crontab/tolog.php

* * * * * php /home/fdipzone/php/crontab/tolog.php  
* * * * * sleep 10; php /home/fdipzone/php/crontab/tolog.php  
* * * * * sleep 20; php /home/fdipzone/php/crontab/tolog.php  
* * * * * sleep 30; php /home/fdipzone/php/crontab/tolog.php  
* * * * * sleep 40; php /home/fdipzone/php/crontab/tolog.php  
* * * * * sleep 50; php /home/fdipzone/php/crontab/tolog.php  

方法二:脚本crontab.sh内容如下:

#!/bin/bash  
  
step=2 #间隔的秒数,不能大于60  
  
for (( i = 0; i < 60; i=(i+step) )); do  
    $(php '/home/fdipzone/php/crontab/tolog.php')  
    sleep $step  
done  
  
exit 0  

  crontab -l内容如下:

# m h  dom mon dow   command  
* * * * * /home/fdipzone/php/crontab/crontab.sh 

如上两步实现了每2秒执行一次/home/fdipzone/php/crontab/crontab.sh

转载:https://blog.csdn.net/fdipzone/article/details/22701113

猜你喜欢

转载自www.cnblogs.com/shengulong/p/9099992.html