Liunx运维批量启动、停止服务

      在日常运维过程中,经常会碰到需要批量启动若干个应用服务,若果手动一个一个启动,非常耗时效率很低,这时候可以考虑脚本批量启动。

一、批量启动应用服务

1、准备服务列表

  将需要启动的服务文件写入文件svc_list.txt

cat  >>  svc_list.txt << EOF
> server1
> server2
> server3
> server4
> server5
> server6
> EOF

2、批量启动脚本foreach_start.sh

#!bin/bash

JAVA_OPTS="${JAVA_OPTS} -Xmx256m -Xms256m"

echo “共有$#个服务需要启动”

for arg in "$@"
do
  echo "当前启动的服务-> $arg"
  nid=`jps| grep $arg | awk '{print $1}'`
  if [[ -z $nid ]]; then
     echo "没有正在运行的$arg......直接启动"
  else
      echo "扫描到正在运行的$arg...执行关闭"
      kill -9  $nid
  fi

  echo "执行启动命令[ java  -jar $JAVA_OPS  $arg.jar  >> ./log/$arg.log 2>&1 & ]"
  nohup  java  -jar $JAVA_OPTS   $arg.jar  >> ./log/$arg.log 2>&1 &


  cid=$(ps  -ef  | grep $arg | grep -v "grep" | awk '{print $2}')
  if [[ -z $cid ]];then
     echo "$arg启动失败,请查看日志"
  else
     echo "$arg启动成功,进程$cid"
  fi
sleep 1
done

3、执行启动

cat svc_list.txt  | xargs  sh  foreach_start.sh

二、批量停止服务foreach_stop.sh

#!bin/bash
for arg in "$@"
do
  echo "当前启动的服务-> $arg"
  nid=`jps| grep $arg | awk '{print $1}'`
  if [[ -z $nid ]]; then
     echo "没有正在运行的$arg......直接启动"
  else
      echo "扫描到正在运行的$arg...执行关闭"
      kill -9  $nid
  fi
done

相关推荐

  1. Liunx批量启动停止服务

    2024-01-28 16:34:03       40 阅读
  2. 】如何停止某个端口相关的所有服务

    2024-01-28 16:34:03       6 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-01-28 16:34:03       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-01-28 16:34:03       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-01-28 16:34:03       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-01-28 16:34:03       18 阅读

热门阅读

  1. postgresql 12 安装

    2024-01-28 16:34:03       36 阅读
  2. 洛谷B3625迷宫寻路

    2024-01-28 16:34:03       30 阅读
  3. 用vue写表格实现数量的加减

    2024-01-28 16:34:03       40 阅读
  4. 算法训练营Day59(单调栈2)

    2024-01-28 16:34:03       35 阅读
  5. STM32F407移植OpenHarmony笔记2

    2024-01-28 16:34:03       33 阅读