簡體   English   中英

CentOS 7 pidof -x不起作用

[英]CentOS 7 pidof -x did not work

我有一台CentOS 7服務器VM。 在此VM中,我安裝了Apache Apollo

我剛剛創建了以下腳本

#!/bin/bash

if pidof -x "apollo" >/dev/null; then
echo "Apollo MQTT is Running."
exit 0
else
echo "Apollo MQTT is Stopped."
exit 2
fi

使用以上腳本,我想檢查apollo服務是否正在運行。 但是當我使用以下命令運行此腳本時

sh filename

當服務運行時,它給出輸出“ Apollo MQTT is Stopped

當我運行以下命令時

ps -ef | grep apollo

它給出以下輸出

root       8647      1  3 10:49 pts/0    00:00:55 java -ea -server -Xmx1G -XX:+HeapDumpOnOutOfMemoryError -XX:-UseBiasedLocking -Dcom.sun.management.jmxremote -Dapollo.home=/opt/apollo -Dapollo.base=/var/lib/mqtt -classpath /opt/apollo/lib/apollo-boot.jar org.apache.activemq.apollo.boot.Apollo /var/lib/mqtt/lib\;/opt/apollo/lib org.apache.activemq.apollo.cli.Apollo run
root       9426   8233  0 11:15 pts/0    00:00:00 grep --color=auto apollo

您可以使用它;

if (( $(ps -ef | grep -v grep | grep -i apollo | wc -l) > 0 ))
then
 echo "Apollo MQTT is Running."
 exit 0
else
 echo "Apollo MQTT is Stopped."
 exit 2
fi

我相信您已經忽略了一個問題。 該過程是一個Java實例,您程序的pidof是該Java實例的。 pidofapollo一無所知,因為這就像他的論點一樣。

我會推薦muzido的解決方案

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM