【发布时间】:2018-03-31 15:50:32
【问题描述】:
我有一个这样的 JSON 文件
{
"hierarchy": {
"structure": {
"card_11001": [
"addCard_4111"
],
"container_11006": [
"mainContainer_11007",
"subContainer_10016"
],
"mainContainer_11007": [
"paymentMethodList_10001"
],
"orderWrap_10012": [
"orderSummary_10005"
],
"paymentMethodList_10001": [
"card_11001",
"placeOrder_10013"
],
"root_10000": [
"payNotice_11011",
"payNotice_10020",
"container_11006",
"placeOrderResultAction_10004"
],
"subContainer_10016": [
"orderWrap_10012",
"footer_10014"
]
}
}
}
我想插入
"offline_11018": [
"instruction_908",
"checkboxList_11019"
]
在"mainContainer_11007" 和"orderWrap_10012" 之间,所以我想要的结果应该是这样的:
{
"hierarchy": {
"structure": {
"card_11001": [
"addCard_4111"
],
"container_11006": [
"mainContainer_11007",
"subContainer_10016"
],
"mainContainer_11007": [
"paymentMethodList_10001"
],
"offline_11018": [
"instruction_908",
"checkboxList_11019"
],
"orderWrap_10012": [
"orderSummary_10005"
],
"paymentMethodList_10001": [
"card_11001",
"placeOrder_10013"
],
"root_10000": [
"payNotice_11011",
"payNotice_10020",
"container_11006",
"placeOrderResultAction_10004"
],
"subContainer_10016": [
"orderWrap_10012",
"footer_10014"
]
}
}
}
我只知道我只能用
将它附加到文件末尾jq --raw-output '.hierarchy.structure + {"offline_11018": ["instruction_908","checkboxList_11019"]}'
但这不是我想要的,我想将它插入到另外两个键之间。如何使用 jq 命令做到这一点?
【问题讨论】:
-
对象中的键是无序的。只要将新键添加到正确的对象中,键存在于何处都没有关系。
标签: json insert edit key-value jq