0
こんにちは私は次のjsonを持っています。文字列エンコードされたjsonをjqで平坦化する方法は?
[
{
"myfield1": "foo",
"myfield2": "{\"field1\":6366987, \"field2\":5501072}"
},
{
"myfield1": "bar",
"myfield2": "{\"field1\":123456, \"field2\":123456}"
}
]
そして、取得したいと思います...これまでのところ、私はこれを得た
[
{
"myfield1": "foo",
"field1": 6366987,
"field2": 5501072
},
{
"myfield1": "foo",
"field1": 123456,
"field2": 123456
},
]
...
JQ「[。[0] | {myfield1:.myfield1、myfield2:.myfield2 | fromjson}] '
しかし、これは、各jsonフィールドを指定する必要があり、jsonエンコードされた文字列を平坦化しないことを意味します。
編集:
私はこれでそれを得たと思う...
JQ「[[0] | with_entries((.KEY = "myfield2" を選択)!)+(myfield2 |。 fromjson)] '
意味がありますか?
クール、私はより一般的なバージョンが欲しかったです。さらに多くのフィールドがあり、myfield1だけです。申し訳ありませんが質問に指定されていない場合。 – user432024
マップ(delpaths([["myfield2"]])+(.myfield2 | fromjson)) 'の作品 – user432024