linux-shell脚本批量杀死pid(redis集群删除)

redis集群删除

#!/bin/bash
pid_name="redis"
echo "杀死的进程名称:" $pid_name

pid=$(ps -ef|grep $pid_name|grep -v grep|awk '{print $2}')

echo "pid列表:" $pid

for item in $pid
do
  echo "杀死进程pid=" $item
  kill -9 $item
done

 

#逆序杀死

#!/bin/bash
pid_name="redis"
echo "杀死的进程名称:" $pid_name

pids=$(ps -ef|grep $pid_name|grep -v grep|awk '{print $2}')

echo "pid列表:" $pids

#反转字符串
reversal_str=''
for word in $pids
do
  reversal_str="$word $reversal_str"
done

#循环杀死pid
for item in $reversal_str
do
  echo "杀死进程pid=" $item
  kill -9 $item
done

 

 

#批量启动

#!/bin/bash
./redis-server redis-6379.conf
./redis-server redis-6380.conf
./redis-server redis-6381.conf

echo "正在启动集群..."
#睡眠1分钟,等待master启动,不然出现没有master八哥
sleep 1m
echo "master 启动成功"

./redis-sentinel sentinel-26379.conf
./redis-sentinel sentinel-26380.conf
./redis-sentinel sentinel-26381.conf

echo "sentinel 启动成功,启动结束"

 

#注意文档要授权,还有不能再windows系统编辑文件,不然无法运行,处理方法如下

#文件执行授权
chmod 777 + 文件名
-- 注意如下错误/bin/bash^M bad interpreter
vi filename
-- 可以看到dos或unix的字样. 如果是dos格式的就需要修改
:set ff?
#修改文件换行方式
:set ff=unix

 

 

 

 

 

你可能感兴趣的:(shell,redis,nosql)