json - 解析Json数组以获取值
问题描述
我有一个嵌套的 JSON 文件:
{
"SupportedVersions": [
{
"EKSVersion": "1.13",
"ContainerVersions": [
"0.0.62",
"0.0.63",
"0.0.73",
"0.0.75",
"0.0.77"
]
},
{
"EKSVersion": "1.14",
"ContainerVersions": [
"0.0.62",
"0.0.63",
"0.0.66",
"0.0.67",
"0.0.68",
"0.0.69",
"0.0.70",
"0.0.71",
"0.0.72",
"0.0.73",
"0.0.74",
"0.0.75",
"0.0.79"
]
}
]
}
我想从文件中获取容器版本的最新版本。我用了jq:
cat *.json | jq '.ContainerVersions[length + 1].ContainerVersions[-length]'
但不能从詹金斯使用它,所以需要其他解决方案。
解决方案
假设您想获取SupportedVersions
数组的最后一项及其ContainerVersions
数组的最后一项,只需使用负索引即可。负索引将相对于数组的末尾而不是开头进行索引。
.SupportedVersions[-1].ContainerVersions[-1]
推荐阅读
- amazon-web-services - 我何时需要将 Kinesis Data Streams 与 Kinesis Firehose 结合使用?
- python - 熊猫在数据框中组合稀疏列
- c++ - 在 C++ 运行时更改类型的成员标识符
- c# - 使用任一验证文本框浮点输入。或者 ,
- javascript - Immutable JS - 如何在转换深度嵌套的 JS 对象时保留类型并获得不变性?
- node.js - 如何在 MongoDB(使用 Mongoose)中有效地执行连接和填充?
- postgresql - 为什么我不能在我的容器中运行 pdo_pgsql?
- html - css html ul 菜单,分隔符与容器对齐
- c# - 将大文件上传到 Azure 文件共享
- concurrency - Rust 从互斥锁访问选项