输入json:
{
"id": 381,
"name": "Module",
"value": "C-A",
"locked": false
}
{
"id": 381,
"name": "Module",
"value": "",
"locked": false
}
{
"id": 381,
"name": "Module",
"value": "",
"locked": false
}
我想删除所有未设置值的对象
""
我有这样的过滤器,但它也可以打印
null
-如何摆脱它?
$ jq 'del(select(.value == ""))' /tmp/intest
{
"id": 381,
"name": "Module",
"value": "C-A",
"locked": false
}
null
null
更新时间:
我还想联接非空值,但得到错误:
$ jq 'select(.value!="")|.value|join(",")' /tmp/intest
jq: error (at /tmp/intest:6): Cannot iterate over string ("C-A")