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

使用jq将含不同键的JSON转换为CSV格式的实现方法咨询

用jq将目标JSON转换为指定格式CSV的实现方案

你可以直接执行以下jq命令完成转换:

jq -r '
# 输出固定表头
"PCID,OSmodle,OSversion,IEversion,hardwareUSB,OrderStatus",
# 遍历所有PC条目
to_entries[] | 
[
  # 外层键作为PCID字段
  .key,
  .value.OSmodle,
  # 字段不存在时默认返回空字符串,避免输出null
  .value.OSversion // "",
  .value.IEversion // "",
  # USB设备列表用&拼接为字符串
  (.value.hardwareUSB | join("&")),
  .value.OrderStatus
] 
# 所有字段包裹双引号后用逗号拼接为CSV行
| map("\"" + . + "\"") | join(",")
' 你的输入文件名.json

命令逻辑说明

  • 加-r参数是为了输出原始字符串,不会给整行结果额外套双引号
  • to_entries[] 将外层的PCID映射对象转换为可遍历的键值对数组
  • // "" 是空值替代运算符,对应字段不存在时返回空字符串,保证CSV列数对齐
  • join("&") 将hardwareUSB的数组格式数据拼接为单个字符串,符合CSV单单元格要求
  • 最后统一给每个字段加双引号,避免字段内容含特殊符号时CSV解析错误

内容的提问来源于stack exchange,提问作者Tai Ka Ki

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 20:24:03