postfix
bashスクリプト内で何かが実行されているかどうかをテストするための安定した方法を探しています。
私の最初の試みはただの試みに過ぎず、うまくpidof postfix
いきませんでした。
その後、次のようにしますpostfix status
。
POSTFIX_LOCATION=/var/packages/MailServer/target/sbin/postfix # location of postfix
result=`$POSTFIX_LOCATION status`
if [ -z $result ]; then
echo "Error: No status output from postfix"
elif [[ "$result" == *"is running"* ]]; then
echo "postfix is running!"
else echo "postfix is not running!"
fi
ただし、ステータスがコンソールに報告されても、result
変数はまだ空です。コンソール出力は次のとおりです。
postfix/postfix-script: the Postfix mail system is running: PID: 11996
Error: No status output from postfix
PID: 11996
最後に、プロセス名(「マスター」)を取得し、postfixが実行されているかどうかをテストする方法を見つけました。だから、する働く:
pidof master
postfix
ただし、これは非常に詳細ではなく、これが実行されているかどうかをテストする信頼できる方法であるかどうかはわかりません。
だから私の質問は次のようになります
postfix status
Bashスクリプト内で出力を取得するには? - 私が間違ったことがありますか?- もっと良いものがありますか?信頼できる
postfix
bashスクリプト内で実行されているかどうかをテストする方法は?
ベストアンサー1
Debian または Ubuntu
sudo service postfix status