2010-12-22 42 views

回答

1

您可以使用ps命令來檢測正在運行的進程和grep爲「PHP-PFM」應用程序 - 可以尋找這樣的:

TEST=`ps -faxu |grep 'php-pfm'|grep -v 'grep'` 
if [ -e "$TEST" ]; then 
    #not running... restart! 
    php-fpm & 
fi 

您可以嘗試爲「PS」和「手冊頁grep的」 ......

編輯:新的代碼片段,包括勝利者修復:

TEST=`ps -faxu |grep 'php-pfm'|grep -v 'grep'` 
if [ -z "$TEST" ]; then 
    #not running... restart! 
    php-fpm & 
fi 

- 五月天

+1

`-e`用於檢查文件是否存在,IIRC。我認爲你的意思是`-z`,對吧? `-z string` - 「如果`string`的長度爲零,則爲真。」 – 2010-12-22 13:37:44

3

您可以使用pgrep命令檢查進程是否正在運行。如你所見,它返回所有匹配進程的進程ID。