Я пытаюсь получить доступ к атрибуту JSON, который содержит массив строк, используя PowerShell
JSON
{
"id": "00000000-0000-0000-0000-000000000000",
"teamName": "Team A",
"securityGroups": [{
"name": "Security Group 1",
"members:": ["abc@mail.com", "def@mail.com", "ghi@mail.com"]
},
{
"name": "Securiy Group 2",
"members:": ["123@mail.com", "456@mail.com", "789@mail.com"]
}]
}
PowerShell
$json = Get-Content 'test.json' | ConvertFrom-Json
ForEach($group in $json.securityGroups)
{
Write-Host "Team: $($group.name)"
ForEach($member in $group.members)
{
Write-Host "Member: $($member)"
}
}
Вывод
Team: Security Group 1
Team: Securiy Group 2
Как видите, только имя группы безопасности ( securityGroup.name ) показывается. Я не могу получить доступ к узлу securityGroups.members , который содержит массив строк (содержащих электронные письма). Моя цель - сохранить этот список строк и l oop через них.
Когда я проверяю, как выглядит объект $ json в PS, я получаю следующее:
PS C:\Users\XYZ> $json
id teamName securityGroups
-- -------- --------------
00000000-0000-0000-0000-000000000000 Team A {@{name=Security Group 1; members:=System.Object[]}, @{name=Securiy Group 2; members:=System.Object[]}}
Что мне здесь не хватает?