если вы хотите попробовать альтернативное решение здесь, используя jtc
утилита unix:
это происходит всего за 2 заранее прописанных шага:
1. переместить значения в подраздел
2. добавить родительский ключ
bash $ <file.json jtc -w[:] -u'[:]<val>v' -T'{ "value": {{val}} }' | jtc -u'<root>v' -T'{ "parent_key": {root} }'
{
"parent_key": {
"foo": {
"value": "bar"
},
"hello": {
"value": "world"
}
}
}
bash $
ОБНОВЛЕНИЕ: с последней версией jtc
функциональность шаблона была расширена, поэтому для работы того же примера требуется небольшое изменение шаблона ({root}
необходимо записать как {{root}}
):
bash $ <file.json jtc -w[:] -u'[:]<val>v' -T'{ "value": {{val}} }' | jtc -u'<root>v' -T'{ "parent_key": {{root}} }'
{
"parent_key": {
"foo": {
"value": "bar"
},
"hello": {
"value": "world"
}
}
}
bash $