通过 NEST 删除与一组名称不匹配的 Elasticsearch 索引

Deleting Elasticsearch indices that don't match a set of names through NEST

我正在使用 NEST 5.2 管理 Elasticsearch 实例,需要删除不再需要的索引。我有一个仍然需要的索引列表,并且想删除不在该列表中的任何内容。有没有函数调用可以实现这个?

如果没有,是否有办法获取索引列表,以便我可以进行自己的过滤并使用 IElasticClient.DeleteIndexAsync 按名称删除它们?我可以使用带有 GET 请求的 _aliases 路由查看列表,但找不到获得相同列表的 IElasticClient.Alias 的正确咒语。

cat indices API可以检索集群中的索引列表

var client = new ElasticClient();

var indices = client.CatIndices()
    .Records
    .Select(r => r.Index)
    .ToList();

然后您可以将这些筛选为您想要删除的那些