如何使用Jq解析器从JSON数组中筛选和选择一个对象

时间:2017-10-10 01:20:32

标签: json parsing select stream jq

我的JSON低于。

{
  "foo": {
    "id": c,
    "name" : "cat"
  }
}
{
  "foo": {
    "id": b,
    "name" : "boy"
  }
}
{
  "foo": {
    "id": "a",
    "name" : "apple"
  }
}


{
  "foo": {
    "id": "bar",
    "name" : "hello-json"
  }
}

使用JSON jq解析器,我如何才能选择其id与bar匹配的JSON对象。所以在上面的情况下,o / p将是: -

{
  "foo": {
    "id": "bar",
    "name" : "hello-json"
  }
}

1 个答案:

答案 0 :(得分:1)

您可以使用以下用法查询过滤掉对象,并仅打印符合条件的对象。

cat "your-json-file-name" | jq ‘select(.foo.id == "bar")’