服务器启动服务sh命令文件

这是一个用于管理Java服务的bash脚本,主要功能包括检查服务是否在运行、启动服务、停止服务以及查看服务状态。脚本使用`ps`命令检查进程,`nohup`启动服务以在后台运行,并能根据用户输入执行相应的操作。
摘要由CSDN通过智能技术生成

服务器启动服务sh命令文件

#!/usr/bin/env bash
#jar包名称
server_name="serverName"

status() {
  if [[ -n $(ps -ef | grep -v grep | grep ${server_name}'.jar' | sed -n '1P' | awk '{print $2}') ]]; then
    echo -e "\033[36m ##: 正常运行中~ \033[0m"
  else
    echo -e "\033[31m 已经停止 \033[0m"
  fi
}

start() {
  if [[ -z $(ps -ef | grep -v grep | grep ${server_name}'.jar' | sed -n '1P' | awk '{print $2}') ]]; then
    #    停止了
    nohup java -server -Xms1g -Xmx2g  -jar ${server_name}'.jar' >/dev/null 2>&1 &
    if [[ -n $(ps -ef | grep -v grep | grep ${server_name}'.jar' | sed -n '1P' | awk '{print $2}') ]]; then
      echo -e "\033[36m ##: 启动成功~ \033[0m"
    else
      echo -e "\033[31m 启动失败 \033[0m"
    fi
  else
    echo -e "\033[32m ##: 服务已经在运行中... \033[0m"
  fi

}

stop() {
  ps -ef | grep -v grep | grep ${server_name}'.jar' | sed -n '1P' | awk '{print $2}' | xargs kill -9
  if [[ -z $(ps -ef | grep -v grep | grep ${server_name}'.jar' | sed -n '1P' | awk '{print $2}') ]]; then
    echo -e "\033[32m ##: 已停止... \033[0m"
  fi
}

main() {

  if [ ! -f ${server_name}".jar" ]; then
    echo -e "\033[31m 当前目录不存在  ${server_name}.jar  文件 \033[0m"
  else
#    存在文件
    echo -e "\033[42;30m ###[ 控制台 ]### \033[0m"
    echo -e "\033[32m 0. \033[0m 启动服务"
    echo -e "\033[32m 1. \033[0m 停止服务"
    echo -e "\033[32m 2. \033[0m 查看服务状态"
    echo -e "\033[32m 3. \033[0m 重启服务"

    read -p "请输入数字0-2的选项,回车确认: " choose
    case $choose in
    0)
      start
      ;;
    1)
      stop
      ;;
    2)
      status
      ;;
    3)
      stop
      start
      ;;
    *)
      echo -e "\033[31m 请输入合法的数字 \033[0m"
      ;;
    esac
  fi

}

main
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值