1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677 |
- #!/bin/bash
- export BASE_DIR=`cd $(dirname $0)/; pwd`
- APP_NAME=${BASE_DIR}/edge_module_portal-0.0.1-SNAPSHOT.jar
- APP_LOG_FILE=log-edge-portal.out
- #使用说明,用来提示输入参数
- usage() {
- echo "Usage: sh gateway.sh [start|stop|restart|status]"
- exit 1
- }
- #检查程序是否在运行
- is_exist(){
- pid=`ps -ef|grep $APP_NAME|grep -v grep|awk '{print $2}'`
- #如果不存在返回1,存在返回0
- if [ -z "${pid}" ]; then
- return 1
- else
- return 0
- fi
- }
- #启动方法
- start(){
- is_exist
- if [ $? -eq 0 ]; then
- echo "${APP_NAME} is already running. pid=${pid}"
- else
- nohup java -jar -Xmx128m ${APP_NAME} >${BASE_DIR}/${APP_LOG_FILE} 2>&1 &
- fi
- }
- #停止方法
- stop(){
- is_exist
- if [ $? -eq "0" ]; then
- kill -9 $pid
- else
- echo "${APP_NAME} is not running"
- fi
- }
- #输出运行状态
- status(){
- is_exist
- if [ $? -eq "0" ]; then
- echo "${APP_NAME} is running. Pid is ${pid}"
- else
- echo "${APP_NAME} is NOT running."
- fi
- }
- #重启
- restart(){
- stop
- sleep 5
- start
- }
- #根据输入参数,选择执行对应方法,不输入则执行使用说明
- case "$1" in
- "start")
- start
- ;;
- "stop")
- stop
- ;;
- "status")
- status
- ;;
- "restart")
- restart
- ;;
- *)
- usage
- ;;
- esac
|