PHP开发中,定时执行如何判断之前的脚本是否跑完?

在PHP开发中,有时我们有这样一种需求

一个脚本 定时每两分钟执行一次 可是在下一个脚本循环执行时 上面一个脚本还没跑完 我们就应该取消当前循环

那么怎么做呢 方法很多 我这里提供一种我认为比较优雅的

这是一个test.php

echo 111;

sleep(1200);

这是一个shell脚本

test.sh

#!/bin/bash

process=`ps -ef|grep '/Library/WebServer/Documents'|grep -v grep|wc -l`

if [ $process -eq 0 ]

then

php /Library/WebServer/Documents

else

echo "1111"

fi

上面脚本的意思相信大家也可以看懂,无非是判断如果test.php还在跑,就输出111,这里大家可以改成自己的逻辑

只需要定时执行 ./test.sh 即可

相关推荐