gpt4 book ai didi

json - 使用jq将数组中的偶数索引转换为json中的键值对

转载 作者:行者123 更新时间:2023-12-02 20:30:53 24 4
gpt4 key购买 nike

我正在尝试使用 jq 将 Solr 6.5 指标解析为键值对:

{
"responseHeader": {
"status": 0,
"QTime": 7962
},
"metrics": [
"solr.core.shard1",
"QUERY./select",
"solr.core.shard2",
"QUERY./update"
...
]
}

我想在 metrics 数组中选择偶数个条目,并将它们作为键值对放在一个对象中,如下所示:

{ 
"solr.core.shard1": "QUERY./select",
"solr.core.shard2": "QUERY./update",
...
}

到目前为止,我只能想出:

.metrics | to_entries | .[] | {(select(.key % 2 == 0).value): select(.key % 2 == 1).value}

但这会返回错误或没有结果。

如果有人能指出正确的方向,我将不胜感激。我觉得答案可能在 map 运算符中,但我一直无法弄清楚。

最佳答案

jq解决方案:

jq '[ .metrics as $m | range(0; $m | length; 2) 
| {($m[.]): $m[(. + 1)]} ] | add' jsonfile

输出:

{
"solr.core.shard1": "QUERY./select",
"solr.core.shard2": "QUERY./update"
}

https://stedolan.github.io/jq/manual/v1.5/#range(upto),range(from;upto)range(from;upto;by)

关于json - 使用jq将数组中的偶数索引转换为json中的键值对,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48792105/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com