У меня есть файл JSON. Простой пример выглядит так:
[
{
"host": "a.com",
"ip": "1.2.2.3",
"port": 8,
"name":"xyz"
},
{
"host": "b.com",
"ip": "2.5.0.4",
"port": 3,
"name":"xyz"
},
{
"host": "c.com",
"ip": "9.17.6.7",
"port": 4,
"name":"xyz"
}
]
Я хочу извлечь значения "host" и "ip" и добавить их в файл значений, разделенных запятыми. Каждая запись в строке выглядит следующим образом:
a.com,1.2.2.3
b.com,2.5.0.4
c.com,9.17.6.7
Я установил библиотеку jq для разбора файла json. Я выполнил эту команду:
cat test.json | jq '.[] | {host: .host, ip: .ip}'
Вывод, который я получаю, следующий:
{
"host": "a.com",
"ip": "1.2.2.3"
}
{
"host": "b.com",
"ip": "2.5.0.4"
}
{
"host": "c.com",
"ip": "9.17.6.7"
}
Есть ли способ извлечь вывод, как я хочу? Этот вывод, который произвел jq, требует дополнительного скрипта для его анализа и сохранения значений по своему усмотрению в формате csv, по одному элементу в строке.