You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用jq解析时间维度动态变化的JSON并提取CpuUsage数据

jq解析动态时间戳键JSON提取CPU使用率方案

核心逻辑

你的JSON结构里MonitorHistory字段存储的是转义后的JSON字符串,且内层对象的键为动态时间戳,不需要匹配具体键名,直接提取所有值的CpuUsage字段即可。

1. 提取所有CpuUsage值(空格分隔格式)

运行命令:

jq -r '.MonitorHistory | fromjson | map(.CpuUsage) | join(" ")' 你的JSON文件路径

参数说明:

  • .MonitorHistory:提取外层MonitorHistory字段的字符串内容
  • fromjson:将转义的JSON字符串解析为标准JSON对象
  • map(.CpuUsage):遍历JSON对象的所有值(忽略动态时间戳键),逐个提取CpuUsage字段生成数组
  • join(" "):将数组合并为空格分隔的字符串,输出格式符合你要求的0.45 0.73 0.6...

2. 扩展:直接查询最高CPU使用率

如果需要直接得到最高值,可使用命令:

jq -r '.MonitorHistory | fromjson | map(.CpuUsage | tonumber) | max' 你的JSON文件路径

额外增加了tonumber将字符串格式的CPU数值转为数字类型,再用max函数取最大值,你提供的示例运行后会输出1.72。

效果验证

针对你给出的示例JSON,运行第一个提取全量值的命令,输出结果为:

0.45 0.57 0.73 0.6 0.45 0.57 0.6 0.65 0.72 0.57 0.87 0.67 0.78 0.72 0.73 0.92 1.0 1.23 0.93 0.98 0.87 0.95 1.18 1.08 1.15 1.37 1.72 1.6 1.47

完全匹配需求。

内容的提问来源于stack exchange,提问作者Lunartist

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 10:57:00