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

如何用jq去除JSON坐标数组中的高程值,仅保留经纬度?

使用jq批量移除JSON坐标中的高程值

首先注意你提供的原始数据格式有个小问题——合法JSON里不能直接用{ [ ... ] },正确的结构应该是外层用数组包裹,比如标准原始数据:

[
  [48.2725225, 12.6538725, 595.2270812],
  [48.2725226, 12.6654544]
]

用jq处理这个需求一行命令就能搞定:

jq 'map(.[0:2])' input.json > output.json

命令说明

  • map(...):遍历外层数组里的每一组坐标子数组
  • .[0:2]:对每个子数组做切片,只保留前两个元素(纬度、经度),不管原数组有没有第三个高程值,这个操作都能安全生效

如果需要直接修改原文件(要求jq 1.5及以上版本,同时需要安装moreutils包的sponge工具避免文件覆盖问题),可以用:

jq --indent 2 'map(.[0:2])' input.json | sponge input.json

处理后得到的结果就是你需要的格式:

[
  [48.2725225, 12.6538725],
  [48.2725226, 12.6654544]
]

把这个命令整合到你的脚本里,就能替代手动删除操作,实现自动化对接系统API。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.10 17:20:27