該版本對於上一個版本作了升級。兼容性更好了。shell
#!/bin/bash ####################################################### # $Name: clean_index.sh # $Version: v2.0 # $Function: delete es index # $Author: dongjiaxiao # $Create Date: 2019-12-31 # $Description: shell ###################################################### #腳本的日誌文件路徑 CLEAN_LOG="/home/djx/scripts/clean_index.log" #es地址 SERVER_PORT=172.17.1.212:9200 #保留的時間,單位天 DELTIME=45 SECONDS=$(date -d "$(date +%F) -${DELTIME} days" +%s) INDEXS=$(curl -s -u elastic:changeme "${SERVER_PORT}/_cat/indices?v"|awk '{print $3}') echo "-------------------$(date +%F_%T)---------------" >>${CLEAN_LOG} for del_index in ${INDEXS} do timeString=$( echo ${del_index} |awk -F"-" '{print $NF}'|egrep "[0-9]*\.[0-9]*\.[0-9]*") if [ -n "$timeString" ] then indexDate=${timeString//./-} indexSecond=$( date -d ${indexDate} +%s ) if [ $(( $SECONDS- $indexSecond )) -gt 0 ] then delResult=`curl -s -u elastic:changeme -XDELETE "${SERVER_PORT}/"${del_index}"?pretty" |sed -n '2p'` echo "delete index:$del_index result:$delResult" >>${CLEAN_LOG} fi fi done