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

使用jq将多个文件中的Data数组内容合并至一个主数组

使用jq合并多JSON文件的Data数组

要实现提取每个JSON文件的Data数组内容,合并成包含Everything数组的目标结构,直接用这条jq命令即可:

jq -n '{Everything: [inputs.Data[]]}' file1.json file2.json ...

命令说明

  • -n:让jq以空输入启动,避免首个文件的顶层结构干扰最终输出
  • inputs.Data[]:遍历所有输入的JSON文件,提取每个文件里的Data数组并展开其中的每一个元素
  • {Everything: [...]]:将所有展开的元素统一包裹到Everything数组中,生成你需要的JSON结构

示例验证

假设你有两个测试文件:
file1.json:

{
  "Brand":"brand",
  "Fulfilled":5600,
  "Total":5626,
  "Data":[
    {"data":"data1"},
    {"data":"data2"}
  ]
}

file2.json:

{
  "Brand":"brand2",
  "Fulfilled":3000,
  "Total":3005,
  "Data":[
    {"data":"data3"},
    {"data":"data4"}
  ]
}

执行命令后会输出:

{
  "Everything": [
    {"data": "data1"},
    {"data": "data2"},
    {"data": "data3"},
    {"data": "data4"}
  ]
}

实用补充

  • 若要将结果保存到新文件,添加重定向即可:jq -n '{Everything: [inputs.Data[]]}' *.json > merged.json
  • 同目录下JSON文件较多时,用*.json匹配所有文件,无需逐个输入文件名

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.08 08:07:15