Как использовать функцию jq's 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
)
IПолучите:
{
"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
}