【发布时间】:2018-11-22 16:22:50
【问题描述】:
如何使用jq的reduce函数来处理多个操作?
给定一个模型:
{
"usage" : {
"os:linux" : {
"2018_11_18" : {
"amount" : 601046342,
"credits" : 99783
},
"2018_10_18" : {
"amount" : 839785106,
"credits" : 173121
}
}
}
}
还有JQ文件:
reduce .usage."os:linux"[] as $item (
{"credits":0,"minutes":0};
."credits" += $item.credits
)
我明白了:
{
"credits": 272904,
"minutes": 0
}
很酷,但我想综合这两个领域,比如:
reduce .usage."os:linux"[] as $item (
{"credits":0,"minutes":0};
."credits" += $item.credits,
."minutes" += $item.amount /1000/60
)
分号导致错误,逗号通过,但只处理最后一个任务,即,
{
"credits": 0,
"minutes": 24013.85746666667
}
【问题讨论】: