{
"host1": [
{"ip": "10.1.2.3"},
{"ip": "10.2.3.4"},
{"ip": "10.3.4.5"},
],
"host2": [
{"ip":"10.1.2.2"},
{"ip":"10.4.5.6"},
],
"host3": [
{"ip":"10.1.18.1"}
]
}
I'm borrowing most of the structure from another question but changing it since now an entry can have multiple values.
I want the output of the jq to be
host1 10.1.2.3
host1 10.2.3.4
host1 10.3.4.5
host2 10.1.2.2
host2 10.4.5.6
host3 10.1.18.1
host1 and host2 and printed for each value.
My attempt was:
jq -r 'to_entries[] | [.key, .value[].ip] | @tsv' file.json
but the output of that was
host1 10.1.2.3 10.2.3.4 10.3.4.5
host2 10.1.2.2 10.4.5.6
host3 10.1.18.1
But I want them on separate lines.
Thanks