Со следующими входами:
# file1.json
{
"uid": "1",
"name": "jack"
}
{
"uid": "2",
"name": "jill"
}
# file2.json
{
"fid": "a",
"file": "sample1.txt",
"uid": "1"
}
{
"fid": "b",
"file": "sample2.txt",
"uid": "1"
}
{
"fid": "c",
"file": "sample3.txt",
"uid": "2"
}
Как мне вставить пару ключ-значение name
в объект в file2.json
.Вывод, который я пытаюсь получить, выглядит следующим образом:
{
"fid": "a",
"file": "sample1.txt",
"uid": "1",
"name": "jack"
}
{
"fid": "b",
"file": "sample2.txt",
"uid": "1",
"name": "jack"
}
{
"fid": "c",
"file": "sample3.txt",
"uid": "2",
"name": "jill"
}
Решения, размещенные на объединяют объекты json с jq и , объединяют два файла json на основе общего ключа с помощью утилиты jqили альтернативный способ из командной строки , кажется, оба возвращают только последнюю подходящую пару.Смотри ниже.
{"uid":"1","name":"jack","fid":"b","file":"sample2.txt"}
{"uid":"2","name":"jill","fid":"c","file":"sample3.txt"}