我希望在我尝试使用awk、jq和npm包的普通id的基础上匹配2个json文件,但没有任何东西接近于工作。没有对2 json文件进行排序,并且不包含所有相同的条目。它们包含常见的networkId,我只希望输出包含来自file2的条目。希望有人能帮忙!下面是一个例子。
file1.json:
[
{
"customerId": "id1",
"networkId": "L_653021545945744804"
},
{
"customerId": "id2",
"networkId": "L_653021545955724805"
},
{
"customerId": "id3",
"networkId": "L_655051945958724557"
},
{
"customerId": "id4",
"networkId": "L_655567989968735408"
}
]file2.json:
[
{
"name": "a",
"networkId": "L_653021545945744804"
},
{
"name": "b",
"networkId": "L_655051945958724557"
}
]想要的产出:
[
{
"customerId": "id1",
"name": "a",
"networkId": "L_653021545945744804"
},
{
"customerId": "id3",
"name": "b",
"networkId": "L_655051945958724557"
}
]发布于 2022-04-27 13:35:15
这是INDEX,JOIN和add的任务
jq '[JOIN(INDEX(.networkId); input[]; .networkId; add)]' file1.json file2.json[
{
"name": "a",
"networkId": "L_653021545945744804",
"customerId": "id1"
},
{
"name": "b",
"networkId": "L_655051945958724557",
"customerId": "id3"
}
]https://stackoverflow.com/questions/72029655
复制相似问题