1

rename_patternとrename_replacementを使用して、スナップショットから復元する必要のあるインデックスがあります。誰かがパターンと交換で私を助けることができますか? Elasticsearch rename_pattern

のは、私の入力インデックス名があるとしましょう: "abc_def_r22_0" と私はあなたが

_r[0-9]+_ 

を使用して_r$NUM_と交換することができる、それが

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" 
} 
+0

すべてのインデックスが同じパターンに従っていると仮定しますか? – ctwheels

+0

彼らはすべて "r22"を持っています。 'code' abc_def_r22_0 abc_ghi_r22_0 abc_jkl_r22_1 ' code' 私は唯一の入力変数から "22" に更新します。 – StoneAgeRebel

+0

'_r [0-9] + _'を試して、 '_r $ NUM_'と置き換えてください。 –

答えて

1

"abc_def_r44_0" として復元します。

_r[0-9]+__r、1桁以上にマッチし、_ので、あなたは、新しい番号と_、その後、_rとそれを交換する必要があります。

regex demoを参照してください。

+1

これも動作します。ありがとう@Wikor – StoneAgeRebel

+0

私はupvoteをクリックしたが、私のrepoutationはそれを表示するには低すぎる:( – StoneAgeRebel