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

使用jq查询JSON文件指定id字段报错,请求解决方法

解决jq查询JSON时的语法错误并获取指定id值

错误原因

你执行的jq '..id'存在语法错误,jq中递归遍历所有元素并筛选属性的正确语法是通过..(递归下降)结合管道符|来实现,直接拼接属性名会被判定为无效语法。

解决方案

根据你的JSON结构,有两种可行的命令:

1. 精准定位(高效推荐)

由于你的JSON是单元素数组包裹的对象,直接通过路径定位即可:

jq -r '.[0].id' new_file.json
  • .[0]:访问数组的第一个元素
  • .id:提取该对象的id属性
  • -r:启用raw输出模式,移除字符串的双引号,直接输出纯文本值job_aztDgKXWT8g8iZ5T

2. 递归查找(通用场景)

如果你的JSON结构更复杂,不确定id的位置,可以用递归遍历+属性筛选:

jq -r '.. | .id?' new_file.json
  • ..:递归遍历JSON中的所有元素
  • .id?:安全提取元素的id属性(?避免无id属性的元素触发报错)
  • -r:同样用于移除输出的引号

执行结果

上述两个命令都会输出你需要的结果:

job_aztDgKXWT8g8iZ5T

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.11 19:50:44