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

jq中数组/对象值迭代器.[]的反向操作符是什么?

jq迭代器.[]的反向操作
  • .[]作为jq的数组/对象值迭代器,对应的反向操作是使用方括号[],它可以将迭代产生的零散值重新收集组合成一个数组。
  • 针对你给出的命令示例,不能直接在.[]后通过管道追加操作来恢复原数组结构,正确的写法是将整个迭代逻辑包裹在方括号中,命令如下:
    cat foo.json | jq '[ .[] ]' > foo2.json
    
  • 对应你的实际需求——修改每个数组元素的subpart字段后重新组合成原数组结构,最终命令应为:
    cat foo.json | jq '[ .[] | .subpart += {"changes": "here"} ]' > foo2.json
    
    这里的方括号[]就承担了把修改后的单个元素重新聚合为数组的“反向迭代”作用。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.15 17:14:55