Я получил огромный JSON, и из-за ограничения в 65536 байтов, я должен обрезать его на первом шаге. Есть много ненужных свойств, и только некоторые из них полезны для меня. Поэтому я пытаюсь сохранить некоторые известные свойства (как ключ, так и значение), удалив все остальные, используя любой из JSONpath или JavaScript или Bash + JQ.
Пример:
{
"vm":[
{
"name":"demo1",
"cpu":"2",
"ram":"4",
"something1":"x",
"disks":[
{
"name":"sda",
"size":"10",
"something1":"x"
},
{
"name":"sdb",
"size":"20",
"something2":"x"
}
]
},
{
"name":"demo2",
"cpu":"4",
"ram":"8",
"something1":"x",
"something2":"x",
"something3":"x",
"disks":[
{
"name":"sda",
"size":"10",
"something1":"x"
},
{
"name":"sdb",
"size":"20"
}
]
}
]
}
Обязательные поля:
$.vm[*].name
$.vm[*].cpu
$.vm[*].ram
$.vm[*].disks[*].size
Таким образом, целевой результат:
{
"vm":[
{
"name":"demo1",
"cpu":"2",
"ram":"4",
"disks":[
{
"size":"10"
},
{
"size":"20"
}
]
},
{
"name":"demo2",
"cpu":"4",
"ram":"8",
"disks":[
{
"size":"10"
},
{
"size":"20"
}
]
}
]
}
Заранее спасибо.