ES:使用painless脚本修改字段内容

复制代码
假设index-a的url字段包含内容“..\..\a\b”,现在要把它替换为空
bash 复制代码
curl -u "elastic:elastic" -k "https://localhost:9200/index-a/_update_by_query" \
-H 'Content-Type: application/json' \
-d'
{
  "script": {
    "source": "ctx._source.url = ctx._source.url.replace(\"..\\\\..\\\\a\\\\b\\\\\", \"\")",
    "lang": "painless"
  }
}
'

解释

  • -k--insecure:允许 curl 忽略 SSL 证书验证(适用于自签名证书)。

  • -u:提供用户名和密码进行基本认证。

  • -X POST:指定 HTTP 方法为 POST。

  • -H 'Content-Type: application/json':指定请求的内容类型为 JSON。

  • -d:发送请求体数据。需要注意里面对"\"的转义

在请求体中:

  • script:指定要执行的脚本。

  • source:脚本内容,使用 Painless 脚本语言。

  • lang:指定脚本语言为 Painless。

相关推荐
青山木14 小时前
Hot 100 --- 岛屿数量
java·数据结构·算法·leetcode·深度优先·广度优先
程序员-珍14 小时前
报错下载android sdk失败
android·java
糖果店的幽灵14 小时前
langgraph分支之 - 动态分支(Dynamic Branch)
java·前端·javascript·人工智能·langgraph
吃饱了得干活15 小时前
亿级订单表分库分表设计,从0到1全流程
java·数据库·面试
唐青枫15 小时前
Java Spring Security 实战详解:从登录认证到 JWT 权限控制
java
曹牧15 小时前
文档格式:OFD
java
豆角焖肉16 小时前
Maven进阶与搭建私服
java·maven
爱莉希雅&&&16 小时前
elasticsearch+kibana+logstash+filebeat链路部署流程
大数据·elasticsearch·搜索引擎·kibana·logstash·filebeat
大不点wow16 小时前
Java序列化与反序列化:让对象走出JVM
java·开发语言·jvm
噢,我明白了16 小时前
Java中日期和字符串的处理
java·开发语言·日期