1. #!/bin/bash
    2. #description: 重启我的java 服务
    3. appName=ruoyi-admin.jar
    4. port=9001
    5. # 杀死指定 java进程
    6. ps -ef|grep java| grep ${appName}|grep -v grep|cut -c 9-15|xargs kill -9 >/dev/null 2>&1
    7. nohup java -jar ${appName} --server.port=${port}>> admin.out & sudo tail -f admin.out
    8. # nohup java -jar ruoyi-admin.jar >> /dev/null 2>&1 &
    1. #!/bin/bash
    2. #设置环境变量
    3. #export JAVA_HOME=/root/uhome/jdk/jdk1.8
    4. #export JRE_HOME=${JAVA_HOME}/jre
    5. #export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
    6. #export PATH=${JAVA_HOME}/bin:$PATH
    7. #这里可替换为你自己的执行程序,其他代码无需更改
    8. APP_NAME=portal-0.0.1-SNAPSHOT.jar
    9. LOG_PATH=./log/portal_console_`date +'%Y-%m-%d'`.txt
    10. APP_PORT=9998
    11. #使用说明,用来提示输入参数
    12. usage() {
    13. echo "Usage: sh java_task.sh [start|stop|restart|status]"
    14. exit 1
    15. }
    16. #检查程序是否在运行
    17. #grep -v反选匹配 awk指定文件某一行
    18. is_exist(){
    19. pid=`sudo netstat -ntlp | grep "${APP_PORT}" | awk '{print $7}' | awk -F '/' '{print $1}'`
    20. #如果不存在返回1,存在返回0
    21. if [ -z "${pid}" ]; then
    22. return 1
    23. else
    24. return 0
    25. fi
    26. }
    27. #启动方法
    28. start(){
    29. is_exist
    30. if [ $? -eq 0 ]; then
    31. echo "${APP_NAME} is already running. pid=${pid}"
    32. else
    33. sudo nohup java -jar ${APP_NAME} >> ${LOG_PATH} &
    34. sudo tail -f ${LOG_PATH}
    35. fi
    36. }
    37. #停止方法
    38. stop(){
    39. is_exist
    40. if [ $? -eq "0" ]; then
    41. sudo kill -9 $pid
    42. sleep 3
    43. status
    44. else
    45. echo "${APP_NAME} is not running"
    46. fi
    47. }
    48. #输出运行状态
    49. status(){
    50. is_exist
    51. if [ $? -eq "0" ]; then
    52. echo "${APP_NAME} is running. Pid is ${pid}"
    53. else
    54. echo "${APP_NAME} is stop and not running."
    55. fi
    56. }
    57. #重启
    58. restart(){
    59. stop
    60. sleep 5
    61. start
    62. }
    63. #根据输入参数,选择执行对应方法,不输入则执行使用说明
    64. case "$1" in
    65. "start")
    66. start
    67. ;;
    68. "stop")
    69. stop
    70. ;;
    71. "status")
    72. status
    73. ;;
    74. "restart")
    75. restart
    76. ;;
    77. *)
    78. usage
    79. ;;
    80. esac