批量删除ES中无效的index / Elasticsearch batch delete indexs
通过elasticSearch 结合shell 批量删除 ES中大量无效index 正则获取所有无效index信息到备选删除记录文件中 1 2 # 通过 curl 获取 es 所有index信息,再通过 grep正则过滤出我们要删除的index,awk 只获取index名称 到 index.log 文件中 curl "${server}/_cat/indices" | grep 'real_time_sales_temporary_new_2019092408*' | awk '{print $3}' > index.log 完整自动脚本如下 循环我们过滤出得无效index列表,执行 delete 操作 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 #!/bin/bash # atovk 20190924 # elasticsearch 服务地址 server="http://10.12.11.1:9346" # 获取 正则查询到的 index real_time_sales_temporary_new_2019092408* curl "${server}/_cat/indices" | grep 'real_time_sales_temporary_new_2019092408*' | awk '{print $3}' > index.log # 循环删除相关无效index cat index.log | while read line do echo "${line}" curl -XDELETE "${server}/${line}" done