1
0
Files
leopard/leopard-server/bin/stop.sh

34 lines
594 B
Bash

#!/bin/bash
original_command="$0"
application_name="/home/ubuntu/app/leopard-server-1.0.0.jar"
function get_pid() {
echo $(ps ef | grep "$application_name" | grep -v grep | awk '{ print $1 }')
}
pid=$(get_pid)
if [[ -z "$pid" ]]; then
echo "Application is already stopped."
exit 0
fi
echo "Stopping $pid..."
kill $pid
LOOPS=0
while (true); do
cpid=$(get_pid)
if [[ -z "$cpid" ]]; then
echo "Oook! cost:$LOOPS"
break
fi
LOOPS=$(($LOOPS+1))
if [[ $(($LOOPS%15)) -eq 0 ]]; then
echo "Wait timeout, try to force kill $pid..."
kill -9 $pid
fi
sleep 1s
done