以JSON格式遍历服务器列表

以JSON格式遍历服务器列表,json,powershell-4.0,Json,Powershell 4.0,我试图为服务器列表创建一个JSON文件,每个服务器都有特定的参数。然后,我希望将JSON作为对象导入PowerShell,并能够相应地导航数据。这是我的第一次尝试: [ { “名称”:“server01”, “驱动器”:[ {“id”:“C:,“阈值”:100}, {“id”:“F:,“阈值”:100} ], “服务”:[“服务1”、“服务2”、“服务3”] }, { “名称”:“server02”, “驱动器”:[ {“id”:“C:,“阈值”:100}, {“id”:“F:,“阈值”:100

我试图为服务器列表创建一个JSON文件,每个服务器都有特定的参数。然后,我希望将JSON作为对象导入PowerShell,并能够相应地导航数据。这是我的第一次尝试:

[
{
“名称”:“server01”,
“驱动器”:[
{“id”:“C:,“阈值”:100},
{“id”:“F:,“阈值”:100}
],
“服务”:[“服务1”、“服务2”、“服务3”]
},
{
“名称”:“server02”,
“驱动器”:[
{“id”:“C:,“阈值”:100},
{“id”:“F:,“阈值”:100},
{“id”:“G:,“阈值”:100}
],
“服务”:[“服务1”、“服务2”]
}
]
PowerShell脚本:

$svr = (Get-Content -Raw -Path c:\scripts\servers.json | ConvertFrom-Json)
$svr
输出

Name Drives Services ---- ------ -------- server01 {@{id=C:; threshold=100}, @{id=F:; threshold=100}} {service1, service2, service3} server02 {@{id=C:; threshold=100}, @{id=F:; threshold=100}, @{id=G:; threshold=100}} {service1, service2} 名称驱动服务 ---- ------ -------- server01{{id=C:;threshold=100},{id=F:;threshold=100}{service1,service2,service3} server02{{id=C:;threshold=100},{id=F:;threshold=100},{id=G:;threshold=100}{service1,service2}
到目前为止,这似乎是可行的,但是我需要能够使用类似于
foreach()
循环的东西对每个循环进行迭代。最好的方法是什么?对我的JSON文件的改进?

遍历每个文件。。。什么?服务器?开车?服务JSON文件?巧克力糖霜炸弹?到目前为止,您尝试了哪些迭代数据?什么东西不能按预期工作?因此,我已经导入了JSON文件,我需要能够迭代每个“服务器”及其子集,类似于数组中的foreach循环,我不知道如何做。我尝试了一个foreach,但它并没有像我期望的那样工作。然后请展示您到底尝试了什么,描述您尝试的结果,并解释您实际期望从代码中得到什么结果。不要将此信息作为评论发布。改为编辑您的问题。