我想使用jq来结合两个数组并运行一点麻烦。解析netdata json输出(mulltiple数组)与jq
我试图从netdata(netdata.firehol.org)解析出数据,而且我感兴趣的json响应中的两部分数据都是数组的一部分。第一个数组是标签第二阵列中的数据点。
采样输入
[
"time",
"guest_nice",
"guest",
"steal",
"softirq",
"irq",
"user",
"system",
"nice",
"iowait"
]
[
1460728600,
0,
0,
0,
0.45731,
0,
0.25108,
11.74702,
48.22465,
0
]
输入
如果你想自己抓住新的数据到t EST对,你可以使用以下命令:
curl -s -X GET --header 'Accept: application/json'
'http://netdata.firehol.org/api/v1/data?chart=system.cpu&after=-10&before=0&points=1&group=average&format=json&options=seconds%2Cjsonwrap' | jq '.result.labels, .result.data[]'
我试图使用地图(),以及试图瓦尔分配到两个数组,然后打印出的对象在一起,但并不成功(如下图) 。
代码
| jq '.result.labels as $labels | .result.data[] as $data | .result.data[] | Label: $labels[.], data: $data[.]}'
我明白任何人的洞察力提前为我有点卡住,并希望能够做到这一切在JQ而不是使用在bash循环(如果可能的话)。
预计输出继电器
{ “时间”: “1460728600”, “guest_nice”: “0”, ... }