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

jq中.[]的内部逆操作是什么?如何从项组构造数组?

jq中.[]的流内逆操作:从零散项构造数组

要实现.[]的流内逆操作(将展开后的零散JSON项重新组合为数组),无需使用CLI的-s选项或[.[]]写法,直接用jq内置的collect函数即可,这是对应.[]展开数组的原生流内逆操作。

替换后的命令

将示例中的revert_op替换为collect:

echo '[ {"a":1}, {"b":2}, {"c":3} ]' | jq '.[] | collect'

输出结果

[ {"a":1}, {"b":2}, {"c":3} ]

低版本兼容方案

如果你的jq版本低于1.6(collect是jq 1.6新增的函数),可以用reduce手动实现收集逻辑:

echo '[ {"a":1}, {"b":2}, {"c":3} ]' | jq '.[] | reduce . as $item ([]; . + [$item])'

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.11 15:03:12