当前位置:首页 >> 服务器

Linux Crontab Shell脚本实现秒级定时任务的方法

一、编写Shell脚本crontab.sh

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

二、crontab -e 输入以下语句,然后:wq 保存退出

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

linux 秒级定时任务实现

思路:

linux本身不支持秒级定时,要实现的话可以定时运行一个脚本(例如每分钟执行一次),这个脚本的内容其实是一个死循环执行代码,也就是一直执行

注意:如果定时执行的程序 单次消耗的时间过大,比如1秒执行不玩,要seelp一下,就是死循环的时候 让脚本睡一会

下面演示一个shell脚本的秒级定时任务:

1.crontab -e  每分钟执行inviteFriend.sh脚本

    #2秒运行-邀请好友3.0

 * * * * * /webservice/crontab/inviteFriend.sh

2.cd /webservice/crontab/ 切换到目录下 vim inviteFriend.sh

写入如下内容:

#!/bin/bash
step=2 #间隔的秒数,不能大于60 

for (( i = 0; i < 60; i=(i+step) )); do
 #$(php '/home/php/crontab/tolog.php') 
 curl -I http://******.com/InviteFriends/sendInviteFriendCoupon
 sleep $step
done
exit 0

wq保存退出

注意:保存之后要给定时的脚本授权

chmod 777 文件名

总结

以上所述是小编给大家介绍的Linux Crontab Shell脚本实现秒级定时任务的方法,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!