解析 VMware REST API 响应

Parse VMware REST API response

我正在尝试解析来自 REST API 调用的 json 响应。我的awk不强。这是一个 bash shell 脚本,我使用 curl 获取响应并将其写入文件。我的问题只是试图将响应分成有用的部分。

响应全部 运行 在一行上,看起来像这样:

{
    "value": {
        "summary": "Patch for VMware vCenter Server Appliance 6.5.0",
        "install_time": "2017-03-22T22:43:25 UTC",
        "product": "VMware vCenter Server Appliance",
        "build": "5178943",
        "releasedate": "March 14, 2017",
        "type": "vCenter Server with an external Platform Services Controller",
        "version": "6.5.0.5300"
    }
}

我只想将类型、版本和产品字符串写入日志文件。理想情况下在 3 条线上,但我真的不在乎;我只需要能够在这个备份脚本 运行 时识别构建等,所以如果我需要重建和恢复,我可以确保我有一个兼容的构建。

Your Rest API 为您提供 JSON 格式,它最适合 JSON 解析器,例如 jq :

curl -s '/rest/endpoint' | jq -r '.value | .type,.version,.product' > config.txt