【问题标题】:Elasticsearch rename_patternElasticsearch 重命名模式
【发布时间】:2018-04-15 03:25:03
【问题描述】:

我需要使用 rename_pattern 和 rename_replacement 从快照中恢复索引。有人可以帮我解决模式和替换吗?

假设我的输入索引名称是:“abc_def_r22_0” 我希望它恢复为“abc_def_r44_0”

NUM="44"
 POST /_snapshot/my_backup/snapshot_1/_restore
{
 "indices": "abc_def_r22_0",
 "ignore_unavailable": "true",
 "include_global_state": false,
 "rename_pattern": "\\d\\d",
 "rename_replacement": "$1'$NUM'_0"
 }

【问题讨论】:

  • 我假设所有索引都遵循相同的模式?
  • 他们都有“r22”。 code abc_def_r22_0 abc_ghi_r22_0 abc_jkl_r22_1 code 我只想从输入变量中更新“22”。
  • 尝试_r[0-9]+_ 并替换为_r$NUM_
  • 你是对的。有效。我用过:r(\\d+)r$NUM
  • 谢谢@ctwheels

标签: regex elasticsearch elasticsearch-plugin indices elasticsearch-indices


【解决方案1】:

你可以使用

_r[0-9]+_

并替换为_r$NUM_

_r[0-9]+_ 将匹配 _r、1 个或多个数字和一个 _,因此您需要将其替换为 _r,然后是一个新数字和一个 _

请参阅regex demo

【讨论】:

  • 我确实点击了赞成票,但我的声誉太低而无法显示:(
猜你喜欢
  • 2021-11-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-09-29
  • 1970-01-01
  • 2019-09-09
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多