如何在 Elasticsearch 5.x 中获取搜索模板列表?

How do I get a list of Search Templates in Elasticsearch 5.x?

看来 .scripts 索引在这个版本中不再存在,所以我不能只做 http:\<elasticsearchserver>:9200\.scripts\_search

根据文档,脚本应该在 config\scripts 目录中,但 \etc\elasticsearch\scripts 文件夹在我的环境中是空的。我现在创建了一个模板,所以我觉得里面应该有一些东西。

我发现当你通过API添加一个Search Template时,它存储在集群状态中,你可以在"metadata"下的/_cluster/state中获取列表-> "stored_scripts".

对我来说,我们的一些模板下的 "code" 非常大,模糊了模板的名称,这正是我想要的。此代码段将使用 jq 实用程序仅解析模板名称:curl 'localhost:9200/_cluster/state' | jq '.metadata.stored_scripts | keys'