Как использовать export-CSV, если ваш файл json содержит пары ключ-ЗНАЧЕНИЕ вместо пары ключ-значение?

Я использую powershell, чтобы попытаться преобразовать Json в csv. У меня есть файл Json, который я хотел бы преобразовать в CSV. Но по какой-то причине, когда я запускаю свой код ниже:

(Get-Content $pathToJsonFile -Raw | ConvertFrom-Json) | Select * | export-CSV $pathToOutputFile -NoTypeInformation 

Я получаю это:

Вот как выглядит файл json:

{
    "hosts": [
        "myserver01",
        "myserver02",
        "myserver03",
        "myserver04",
        "myserver05"
    ],
    "ips": [
        "10.100.0.10",
        "10.111.11.111",
        "10.122.2.22",
        "100.22.111.111",
        "10.111.222.333"
    ]
}

Я хочу, чтобы результат выглядел так

Пожалуйста помоги. Я занимался этим последние пару часов. Я не очень хорошо разбираюсь в PowerShell. Как это сделать?

Спасибо

1 ответ

Решение

Нравится? Я предполагаю, что первый хост идет с первым ip и так далее.

$a = cat file.json | convertfrom-json

0..($a.hosts.count-1) | 
foreach { [pscustomobject]@{hosts = $a.hosts[$_]; ips = $a.ips[$_]} } | 
convertto-csv


"hosts","ips"
"myserver01","10.100.0.10"
"myserver02","10.111.11.111"
"myserver03","10.122.2.22"
"myserver04","100.22.111.111"
"myserver05","10.111.222.333"
Другие вопросы по тегам