如何使用JQ将元素插入数组 [英] How to insert element into array with jq

查看:3
本文介绍了如何使用JQ将元素插入数组的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有JSON

[
  {"id": "1"},
  {"id": "5"},
  {"id": "9"},
  {"id": "0"},
  {"id": "3"}
]

我要插入要生成的对象:

[
  {"id": "1"},
  {"id": "5"},
  {"id": "2"},
  {"id": "9"},
  {"id": "0"},
  {"id": "3"}
]

我该怎么做这个JQ?按索引或相对于其他对象。

编辑:这不是Add new element to existing JSON array with jq的副本,Add new element to existing JSON array with jq是关于将元素追加/前置到数组的。如前所述,我想插入一个元素。

推荐答案

我不确定这是不是一个好的解决方案,但这就对了:

发件人:

[0, 1, 3]

收件人:

[0, 1, 2, 3]

使用:

jq '[.[0:2][], 2, .[2:][]]' input.json
//   ^         ^  ^
//   A         B  C
  • A:第一个筛选器:新项目之前的所有项目
  • B:第二个筛选器:您的新项目
  • C:第三个筛选器:新项目之后的所有项目

这篇关于如何使用JQ将元素插入数组的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆