jq:使用指定键

时间:2016-02-04 11:29:13

标签: jq

输入:

{
    "name":"JSON",
    "good":true,
    "target":"yes"
}
{
    "name":"XML",
    "good":false
}

我想排除没有键“target”的对象,如下所示,但是没有:

jq -r ".| select(has(\"target\"))"

预期产出:

{
    "name":"XML",
    "good":false
}

尝试了这个:

jq -r " . | del(select(has(\"target\")))"

但是有两个返回的对象,其中一个是NULL

null
{
  "good": false,
  "name": "XML"
}

1 个答案:

答案 0 :(得分:5)

选择那些的人target;这样,您就不会使用del

jq -r 'select(has("target") | not)'