#!/bin/bash
log=temp.log
host=100.70.95.31:9200
## 判断文件是否存在, 存在的话删除文件
if [ ! -f "$log" ]; then
## 删除文件
rm -rf "$log"
fi
## 获取所有UNASSIGNED状态的节点
curl -XGET http://$host/_cat/shards | grep UNASSIGNED > $log
## 循环获取文件中的值
while read line
do
## 读取每行数据 按照空格拆分 得到数组
array=(${line// / })
## 删除UNASSIGNED状态的分片
curl -XDELETE http://$host/${array[0]}
done < $log
es删除unasigned状态节点脚本
最新推荐文章于 2024-01-16 09:52:34 发布