私は、bash デーモン内で使用する「他のすべてのデーモン プロセスを強制終了する」関数を作成しようとして、非常に苦労しています。一度に複数のデーモンを実行したくありません。助言がありますか?これは私が持っているものです:
#!/bin/bash
doService(){
while
do
something
sleep 15
done
}
killOthers(){
otherprocess=`ps ux | awk '/BashScriptName/ && !/awk/ {print $2}'| grep -Ev $$`
WriteLogLine "Checking for running daemons."
if [ "$otherprocess" != "" ]; then
WriteLogLine "There are other daemons running, killing all others."
VAR=`echo "$otherprocess" |grep -Ev $$| sed 's/^/kill /'`
`$VAR`
else
WriteLogLine "There are no daemons running."
fi
}
killOthers
doService
ある時はうまくいきますが、他の時はそうではありません。一貫性はほとんどありません。