我目前正在解决一个问题,似乎无法解决这个问题。这是一些数据,以便您了解我在下面所说的内容:
foo.json
{
"Schedule": [
{
"deviceId": 123,
"reservationId": 123456,
"username": "jdoe"
},
{
"deviceId": 456,
"reservationId": 589114,
"username": "jsmith"
}
],
"serverTime": 1522863125.019958
}
bar.json
[
{
"a": {
"b": "10.0.0.1",
"c": "hostname1"
},
"deviceId": 123
},
{
"a": {
"b": "10.0.0.2",
"c": "hostname2"
},
"deviceId": 456
}
]
foobar.json
{
"Schedule": [
{
"deviceId": 123,
"reservationId": 123456,
"username": "jdoe",
"a": {
"b": "10.0.0.1",
"c": "hostname1"
}
}
},
{
"deviceId": 456,
"reservationId": 789101,
"username": "jsmith",
"a": {
"b": "10.0.0.2",
"c": "hostname2"
}
}
],
"serverTime": 1522863125.019958
}
我正在尝试使用 jq 来执行此操作,并从这篇文章中获得了一些帮助:https://github.com/stedolan/jq/issues/1090目标是能够使用某些键作为文档之间的公共点来组合 JSON。数据可以嵌套任意数量的级别。在这种情况下,foo.json 的嵌套数据只有两层深度,但需要与嵌套 1 层深度的数据组合。
任何和所有的建议都会非常有帮助。如果需要的话,我也很乐意澄清和回答问题。谢谢你!