Как добавить ключи к значениям и преобразовать в json в PowerShell?
У меня есть такая строка:
$string = "PackageName1,1,C:\Path
PackageName2,12,C:\Path2
PackageName3,3,C:\Path3"
(это файл с несколькими строками, когда я получаю содержимое, у меня есть строка выше)
Я хочу преобразовать эту строку в Json:
[
{
Pacakge: "PackageName1",
Branch: = "1",
LocalPath = "C:\Path"
}
{
Pacakge: "PackageName2",
Branch: = "2",
LocalPath = "C:\Path2"
}
]
Я могу получить значения с помощью этого кода:
$spiltted = $string.Split(' ')
ForEach ($s in $splitted)
{
$values = $s.Split(',')
}
Как добавить ключи Json к каждому значению и преобразовать его в объект Json?
Спасибо.
1 ответ
Решение
Как ваша строка выглядит как CSV без заголовков:
$string | ConvertFrom-Csv -Header Package,Branch,LocalPath|ConvertTo-Json
Образец вывода
[
{
"Package": "PackageName1",
"Branch": "1",
"LocalPath": "C:\\Path"
},
{
"Package": "PackageName2",
"Branch": "12",
"LocalPath": "C:\\Path2"
},
{
"Package": "PackageName3",
"Branch": "3",
"LocalPath": "C:\\Path3"
}
]