如何从命令行获取 Elasticsearch 服务器版本

Qui*_*enn 4 bash command-line-interface elasticsearch

有没有办法只获取 Elasticsearch 服务器的版本号。我知道您获取了 JSON 请求数据,但有没有办法解析该请求,仅获取版本号。

卷曲本地主机:9200

{
    ...
    "version": {
        ...
        "number": "2.1.1"
    }
}
Run Code Online (Sandbox Code Playgroud)

Val*_*Val 5

另一种不需要任何外部依赖项的方法是使用响应过滤filter_path查询字符串参数(自 ES 1.6 起可用)和awk命令。

curl -s -XGET 'localhost:9200?filter_path=version.number&pretty=false' | awk -F'"' {'print $6'}
Run Code Online (Sandbox Code Playgroud)

返回:

2.1.1
Run Code Online (Sandbox Code Playgroud)