Mam danych JSON strukturyzowanych następująco (mogą wystąpić pewne błędy tutaj, dane używam jest w porządku):Powershell convertfrom-json | ConvertTo-CSV
[{
"id": 12345,
"itemName": "some string",
"sellerId": 123,
"seller": "",
"categoryId": ,
"categoryPath": [
{
//more data
},
{
//more data
}
]},
{"id": 12346,
"itemName": "some other string",
"sellerId": 234,
"seller": "",
"categoryId": ,
"categoryPath": [
{
//more data
},
{
//more data
}
]
}]
Chciałbym przekonwertować go do pliku CSV, aby wybrany nazwy właściwości stają się nagłówkami CSV, a ich wartość (tylko głębokość 1) staje się danymi. np
id,itemName,sellerId
12345,"some string",123
12346,"some other string",234
Próbowałem przy użyciu setki odmian
cat file.json | convertfrom-json | convertto-csv
ale żaden z nich nie pracował. Dostaję tylko dane csv z nazwami/typami obiektów i nie mogę wymyślić, jak sprawić, by wykorzystywał tylko wybrane właściwości każdego obiektu z danych json.
nie jest to ogromny wielkiego, ale dane wejściowe nie będzie pasować do Twojego wyjście próbki. – Matt
Dzięki za wskazanie, sprawiłem, że wynik próbki pasuje do danych wejściowych. –
Nie mogłem tego zrobić w jednym wierszu. Czy to działa dla ciebie? '$ convert = Get-Content file.json -raw | ConvertFrom-Json; $ convert | Wybierz id, itemName, sellerId | Convertto-CSV -NoTypeInformation'. Potrzebny do zapisania wyników do zmiennej najpierw z jakiegoś powodu, którego jeszcze nie znam. Działa dalej. – Matt