package main import ( "bytes" "dsTools/Utils/EsUtil" "dsTools/Utils/FileUtil" "encoding/json" "fmt" jsoniter "github.com/json-iterator/go" ) func main() { //1、http请求,获取有哪些索引 var indexNameArr = EsUtil.GetAllIndex() //2、遍历所有的索引 for i := 0; i < len(indexNameArr); i++ { index := indexNameArr[i] mappingStr, err := EsUtil.GetMapping(index) //转为json+去掉表名 mappingStr= jsoniter.Get([]byte(mappingStr), index).ToString() if err == nil { mappingStr = `{"settings":{"number_of_shards":5,"index.refresh_interval":"5s"},` + mappingStr[1:len(mappingStr)-1]+"}" var str bytes.Buffer _ = json.Indent(&str, []byte(mappingStr), "", " ") //形成文件 FileUtil.WriteToFile("./MappingBackupJson/"+index+".json", str.String()) } } fmt.Println("恭喜,所有操作成功完成!") }