檢測某個php程序執行狀態shell

2021-09-26 11:13:19 字數 1216 閱讀 5230

一.主要shell**

#!/bin/bash

executepath=$(readlink -f $(dirname $0))

executelog=`readlink -f $executepath/check.log`

envpath=`readlink -f $executepath/../../env.sh`

source $envpath

set -a; source /etc/environment; set +a;

scriptindex=`readlink -f $executepath/../console/index.php`

proccessname=common/test/index

proccessnum=`ps aux|grep -v grep|grep $proccessname|wc -l`

neednum=1

if [ $1 ]

then

proccessname=$1

fiif [ $2 ]

then

neednum=$2

fifunction setproccessnum

function stop_pro()

') for pid in $pids

dosetproccessnum

if [ $proccessnum -eq $neednum ]

then

break

fikill -9 $pid

done

}function start_pro()

if [ $proccessnum -lt $neednum ]

then

echo "實際程序數為:"$proccessnum"需要程序數為:"$neednum"增加程序數..."

start_pro

elif [ $proccessnum -gt $neednum ]

then

echo "實際程序數為:"$proccessnum"需要程序數為:"$neednum"減少程序數..."

stop_pro

sleep 1

start_pro

fi

二.使用說明

將**寫入檔案,路徑與專案需要自行調整

加入定時linux任務檢測

程序執行狀態

程序是乙個動態的實體,所以他是有生命的。從建立到消亡,是乙個程序的整個生命週期。在這個週期中,程序可能會經歷各種不同的狀態。一般來說,所有程序都要經歷以下的3個狀態 就緒態。指程序已經獲得所有所需的其他資源,正在申請處理處理器資源,準備開始執行。這種情況下,稱程序處於就緒態。阻塞態。指程序因為需要等...

Centos 程序執行狀態 ps

ps 顯示系統程序在瞬間的執行狀態 相關選項 a顯示所有使用者的程序,包含每個程式的完整路徑 x顯示所有系統程式,包括那些沒有終端的程式 u顯示使用者的名稱和起始時間 f詳細顯示程式執行的路徑 c只顯示程序名稱,不顯示完整路徑 e除將核心程序以外所有程序的資訊寫到標準輸出 ps 展示資訊 1.pid...

自動檢測apache執行狀態

最近一段時間,乙個伺服器託管使用者的經常因為程式錯誤而導致apache服務自動中止,而造成伺服器內的 均不能訪問。幫他做了乙個shell,定時檢測apache是否啟動,如果沒啟動,自動啟動該服務。bin sh check services start services check services ...