您好,登錄后才能下訂單哦!
怎么在Linux中使用PHP判斷程序的運行狀態?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。
第一種:用linux里面的正則匹配
復制代碼 代碼如下:
function ifrun($clsname,$bf = 0)
{
//下面進行檢測,如有一個進程正在運行,則不運行
$str=shell_exec("/bin/ps ax > /home/root/".$clsname."_run.txt");
$str=shell_exec("/bin/grep -c '".$clsname.".php' /home/root/".$clsname."_run.txt");
if($bf >0)
{
if($str >=$bf)
{
return 1;
}
else
{
return 0;
}
}
else
{
if ($str>=2)
{
return 1;
}
else
{
return 0;
}
}
}
調用:
復制代碼 代碼如下:
if (ifrun('pooy',5)) { die("pooy is running"); }
備注:pooy是程序pooy.php的名稱!
第二種:把進程寫到文件里面,然后用file函數去讀取然后去匹配字符串
復制代碼 代碼如下:
system('ps -ef |grep wget > /root/pooy.txt');
$arr=file('/root/pooy.txt');
$total=count($arr);
for($i=0;$i<$total;$i++){
$count=array();
if(stristr($arr[$i],'www/pooy') !== FALSE) {
//echo '"earth" not found in string';
$count[]='no';
break;
}
}
if(count($count) >= 1 )
{
echo "A same programs are running";
exit();
}else
{
echo "start__________________________________________________";
}
看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。