【发布时间】:2021-04-08 12:30:18
【问题描述】:
我有 JSON,它以以下格式动态出现:
{
"world": 583,
"peace": [
{
"id": "Happy",
"valid": true,
"version": "9"
},
{
"id": "Old",
"valid": false,
"version": "2020"
},
{
"id": "New",
"valid": true,
"version": "2021"
},
{
"id": "Year",
"valid": true,
"version": "5"
}
]
}
我是 全新 jq,我已经阅读了教程和手册,以及 Stack Overflow 上的几个问题,包括:
How to sort a json file by keys and values of those keys in jq
我想使用 jq 输出所有有效的 id ("valid"=true) 并按 id 排序输出。
所以在这个例子中,我希望输出是:
Happy
New
Year
到目前为止,我有:
jq '..|.peace[]|select(.valid)|=sort_by(.id)'
但这会引发 Cannot index string with string "id" 错误。
我怎样才能做到这一点?
谢谢你,新年快乐!
【问题讨论】:
标签: arrays json sorting boolean jq