The main purpose is to restart the background of more important processes, if the use of killall-9 forced kill, may cause problems. such as database processes. The code is as follows:
Copy Code code as follows:
#!/bin/sh
If [-Z "$"]; Then
/bin/echo "$ <command line>"
Exit 1
Fi
Param= '
List= ' 2 3 4 5 6 7 8 9 '
For i in $list; Todo
Eval p= ' $ ' $i
If [-Z $p]; Then
Break
Fi
param= "$param $p"
Done
if [-f/bin/awk]; Then
Awk=/bin/awk
Else
Awk=/usr/bin/awk
Fi
if [-f/bin/grep]; Then
Grep=/bin/grep
Else
Grep=/usr/bin/grep
Fi
Program= '/bin/echo $ | $AWK-F '/' {print $NF;} ' `
Count= '/bin/ps auxww | $GREP-W $program | $GREP-V GREP | /usr/bin/wc-l '
If [$count-gt 0]; Then
I=0
/bin/echo "Stopping $program ..."
While [1-eq 1]; Todo
If [$i-eq 0]; Then
/usr/bin/killall $program
Else
/usr/bin/killall $program >/dev/null 2>&1
Fi
If [$?-ne 0]; Then
Break
Fi
/usr/bin/printf.
/bin/sleep 1
Let i= $i +1
Done
Fi
/bin/echo ""
Count= '/bin/ps auxww | $GREP-W $program | $GREP-V GREP | $GREP-V $ | /usr/bin/wc-l '
If [$count-eq 0]; Then
/bin/echo "Starting $program ..."
EXEC $ $param
Else
/bin/ps AUXWW | $GREP-W $program | $GREP-V GREP | $GREP-V $
/bin/echo "Already running $program count: $count, restart aborted!"
Fi