0
ビルドしているスクリプトは、同じプロセスをより多くのプロセス(pid)が実行しているかどうかを確認する必要があります。プロセスがうまくいったら、このプロセスを終了する必要があります。複数のpidが存在するかどうかを確認するためにBashが必要です
これは例ですが、何らかの理由でこのプロセスが2回実行されます。だから私たちはこれを監視し、モノプロセスをkill/restartする必要があります。
#!/bin/sh
export PATH=/bin:/sbin:/usr/bin:/usr/sbin
set -x # set debug
PID="/usr/local/bin/Serverd.pid"
Service="/etc/init.d/serverd" $1
#
# Functions
#
die(){
printf '%s\n' "$*" >&2
exit 1
}
log(){
logger -t HealthCheck -i $*
}
process() {
[[ $(pidof mono /dev/null 2>&1) == '' ]] && echo 0 || echo 1
}
pid() {
[[ ! -r $PID ]] && echo 0 || echo 1
}
for i in $(process); do
if [[ $i -eq '0' ]]
then
echo 'Process is Stoped!!!!!'
if [[ $(pid) -eq '1' ]]
then
echo PID still there, remove PID first
rm -rf $PID
$Service start
exit 1
else
$Service start
exit 1
fi
else
echo 'Process is Running!!!!'
exit 1
fi
done
私は同じモノプロセスの2 PID私はこれを行う方法猫
+++ pidof mono /dev/null
++ [[ 30454 30014 == '' ]]
を殺されるためにこの必要性を持っている場合は?
ありがとう、これは仕事でした! – DarkNight