我有这个输入数据:
[
{
"attributes": {
"created": "2021-10-18T12:02:39+00:00",
"enabled": true,
"expires": null,
"notBefore": null
},
"contentType": null,
"id": "https://kjkljk./secrets/-/1",
"managed": null,
"name": "pw",
"tags": {}
},
{
"attributes": {
"created": "2021-10-18T12:06:16+00:00",
"enabled": true,
"expires": null,
"notBefore": null
},
"contentType": "",
"id": "https://kjklj./secrets/-/2",
"managed": null,
"name": "pw",
"tags": {}
}
]
我需要使用jq将启用(enabled)设置为true的id值提取到一个新数组中。这是我目前的代码:
.[] | select(any(.attributes; .enabled== true)) | {id}
但它只会导致这个结果:
{
"id": "https://kjkljk./secrets/-/1"
}
{
"id": "https://kjklj./secrets/-/2"
}
如何将这两个对象转换为字符串数组呢?
[
"id": "https://kjkljk./secrets/-/1",
"id": "https://kjklj./secrets/-/2"
]
[ "id": "https://kjkljk./secrets/-/1", "id": "https://kjklj./secrets/-/2" ]
不是有效的 JSON。你说“字符串数组”,所以你是不是想说[ "https://kjkljk./secrets/-/1", "https://kjklj./secrets/-/2" ]
? - ikegami