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。

相关推荐
MegaDataFlowers7 小时前
解决启动Tomcat在idea输出日志乱码问题
java·ide·intellij-idea
七夜zippoe7 小时前
应用安全实践(二):Spring Security核心流程与OAuth 2.0授权
java·安全·spring·security·oauth 2.0
ch.ju7 小时前
Java程序设计(第3版)第二章——java的数据类型:整数
java
程序员清风7 小时前
AI编程最佳实践:一个AI写代码,另一个AI查Bug!
java·后端·面试
计算机学姐7 小时前
基于SpringBoot的高校餐饮档口管理系统
java·vue.js·spring boot·后端·spring·intellij-idea·mybatis
Lyyaoo.7 小时前
【设计模式】工厂模式
java·开发语言·设计模式
派大星酷7 小时前
Java 网络编程全解:TCP、UDP、HTTP、WebSocket
java·网络·tcp/ip
可以简单点7 小时前
分析一个线程日志工具类
java·springboot
EvenBoy8 小时前
IDEA中使用Claude Code
java·ide·intellij-idea
Elasticsearch8 小时前
如何比较两个 Elasticsearch 索引并找出缺失的文档
elasticsearch