定时任务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