arrays - Bash JSON 获取数组的长度

标签 arrays json

AWS CLI 在过滤器上返回一个空数组。我希望能够计算该数组中元素的数量:

{ "Reservations": [] }

对比

{ "Reservations": [ { "OwnerId": "124531353552" ...... } ] }

因此,如果没有结果,我应该返回 0(第一个示例)。

最佳答案

您可以使用 jq 模块来解析 JSON 响应 在 ubuntu 上通过 apt-get 安装,在 mac 上通过 brew 安装

它会像这样工作

╰─$echo '{ "Reservations": [] }' | jq '.Reservations | length'
0

╰─$ echo '{ "Reservations": [ { "OwnerId": "124531353552"}, { "OwnerId2": "123456789" }] }' | jq '.Reservations | length'
2

关于arrays - Bash JSON 获取数组的长度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44289743/

相关文章:

javascript - 如何用另一个对象的键更改对象的键

javascript - 将 javascript 中的数组数组传递给字段

json - 如何将 json 中的顶级数组与 specs2 匹配

JavaScript,从原始对象的副本中删除属性,实际上影响了原始对象

java - 将字符串数组作为字段的 Java 对象转换为 JSONObject

json - 我的所有 .json 文件从 schemastore.azurewebsites.net 加载引用/架构时都出现问题

javascript - Underscore.js - 如何对嵌套的对象数组进行排序

javascript - 查找并删除数组中匹配和对应的值

javascript - 如何使用canvas javascript对文本进行动画处理并设置最大宽度和高度

javascript - 将对象添加到CPArray时抛出CPRangeException