所以我的foreach循环有问题,我无法弄清楚自己在做什么错。
以下是我的代码示例:
$objectarray ##( So this variable contains a list of lists ie name + address) ##
Foreach ($object in $objectarray.name){
$objectid = $objectarray.Where({$_.name -eq "$object"}).id
$objectaddress = $objectarray.Where({$_.name -eq "$object"}).address
$objectprint = "$objectid" + ": " + "$objectaddress"
$objectprint
return 0
}
现在的问题是 $ objectarray 里面有多个列表,每个列表的名称,ID,地址等
但是它只打印第一个,而我只有第一个0作为返回值……尽管事实上它们很多
最佳答案
我认为是因为您在for循环内返回0。应该把它放在循环之外。
Foreach ($object in $objectarray.name){
$objectid = $objectarray.Where({$_.name -eq "$object"}).id
$objectaddress = $objectarray.Where({$_.name -eq "$object"}).address
$objectprint = "$objectid" + ": " + "$objectaddress"
$objectprint
}
return 0
关于powershell - Powershell:Foreach不起作用?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44709524/