Sto cercando di esportare dati da console kv in json con un oggetto nidificato per ogni livello di profondità in console.Utilizzo di jq per dividere una stringa in oggetti nidificati
Esempio JSON restituito da console:
[
{
"LockIndex": 0,
"Key": "foobar/testing",
"Flags": 0,
"Value": "xxxxx",
"CreateIndex": 833,
"ModifyIndex": 833
},
{
"LockIndex": 0,
"Key": "foobar/bazbar",
"Flags": 0,
"Value": "xxxxx",
"CreateIndex": 833,
"ModifyIndex": 833
}
]
JSON desiderata:
[
{
"foobar": {
"testing": "xxxxx",
"bazbar": "xxxxx"
}
}
]
Sono una specie di chiudere con jq '.[] | objects | {Key: .Key | split("/"), Value: .Value}'
ma non sto solo capire come posso Recurse sulla base di una scissione() di .Key e crea oggetti nidificati. Penso che dovrò anche ordinare sort_by (.Key) per gestire i dati fuori ordine, a meno che non sia possibile arbitrare lo | add
e jq risolvere la struttura.
Mi rendo conto che xxxxx
è codificato in base64 e, si spera, base64d
verrà unito rapidamente ma fino ad allora penso di poter gestire la decodifica con la post-elaborazione della shell.