stop.sh 837 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. #!/bin/bash
  2. cd `dirname $0`
  3. BIN_DIR=`pwd`
  4. cd ..
  5. DEPLOY_DIR=`pwd`
  6. CONF_DIR=$DEPLOY_DIR/conf
  7. SERVER_NAME=`sed '/dubbo.application.name/!d;s/.*=//' conf/dubbo.properties | tr -d '\r'`
  8. if [ -z "$SERVER_NAME" ]; then
  9. SERVER_NAME=`hostname`
  10. fi
  11. PIDS=`ps -ef | grep java | grep "$CONF_DIR" |awk '{print $2}'`
  12. if [ -z "$PIDS" ]; then
  13. echo "ERROR: The $SERVER_NAME does not started!"
  14. exit 1
  15. fi
  16. if [ "$1" != "skip" ]; then
  17. $BIN_DIR/dump.sh
  18. fi
  19. echo -e "Stopping the $SERVER_NAME ...\c"
  20. for PID in $PIDS ; do
  21. kill $PID > /dev/null 2>&1
  22. done
  23. COUNT=0
  24. while [ $COUNT -lt 1 ]; do
  25. echo -e ".\c"
  26. sleep 1
  27. COUNT=1
  28. for PID in $PIDS ; do
  29. PID_EXIST=`ps -f -p $PID | grep java`
  30. if [ -n "$PID_EXIST" ]; then
  31. COUNT=0
  32. break
  33. fi
  34. done
  35. done
  36. echo "OK!"
  37. echo "PID: $PIDS"