uas.sh 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. #!/bin/sh
  2. cd $(dirname $0)
  3. APP_DIR=`pwd -P`
  4. APP_NAME=uas
  5. JAR_NAME=$APP_NAME\.jar
  6. PID=$APP_NAME\.pid
  7. usage() {
  8. echo "Usage: sh uas.sh [start|stop|restart|status]"
  9. exit 1
  10. }
  11. is_exist(){
  12. pid=`ps -ef|grep $JAR_NAME|grep -v grep|awk '{print $2}' `
  13. if [ -z "${pid}" ]; then
  14. return 1
  15. else
  16. return 0
  17. fi
  18. }
  19. start(){
  20. is_exist
  21. if [ $? -eq "0" ]; then
  22. echo ">>> ${JAR_NAME} is already running PID=${pid} <<<"
  23. else
  24. nohup $JRE_HOME/bin/java -Dfile.encoding=UTF-8 -Dspring.profiles.active=test -Dlogging.path=$APP_DIR -server -Xms1024m -Xmx2048m -XX:NewSize=256m -XX:MaxNewSize=512m -XX:-UseGCOverheadLimit -XX:+UseConcMarkSweepGC -jar $JAR_NAME >/dev/null 2>&1 &
  25. echo $! > $PID
  26. echo ">>> start $JAR_NAME successed PID=$! <<<"
  27. fi
  28. }
  29. stop(){
  30. #is_exist
  31. pidf=$(cat $PID)
  32. #echo "$pidf"
  33. echo ">>> app PID = $pidf begin kill $pidf <<<"
  34. kill $pidf
  35. rm -rf $PID
  36. sleep 2
  37. is_exist
  38. if [ $? -eq "0" ]; then
  39. echo ">>> app 2 PID = $pid begin kill -9 $pid <<<"
  40. kill -9 $pid
  41. sleep 2
  42. echo ">>> $JAR_NAME process stopped <<<"
  43. else
  44. echo ">>> ${JAR_NAME} is not running <<<"
  45. fi
  46. }
  47. status(){
  48. is_exist
  49. if [ $? -eq "0" ]; then
  50. echo ">>> ${JAR_NAME} is running PID is ${pid} <<<"
  51. else
  52. echo ">>> ${JAR_NAME} is not running <<<"
  53. fi
  54. }
  55. restart(){
  56. stop
  57. start
  58. }
  59. case "$1" in
  60. "start")
  61. start
  62. ;;
  63. "stop")
  64. stop
  65. ;;
  66. "status")
  67. status
  68. ;;
  69. "restart")
  70. restart
  71. ;;
  72. *)
  73. usage
  74. ;;
  75. esac
  76. exit 0