我试图在powershell中创建一个哈希表/字典(kvp),以供进一步使用(用于excel添加)。然而,我得到基于对象的错误。我不确定我做错了什么,因为工作流程似乎在我的脑海中匹配和连接。
代码:
$users = Get-ADUser -Filter * -Properties * -SearchBase "DC=corp,DC=example,DC=com" | select-object name
foreach ($name in $users) {
$hash = [ordered]@{ $name = (Get-ADPrincipalGroupMembership $name | Select-Object name) }
}
$hash
错误:
Get-ADPrincipalGroupMembership : Cannot bind parameter 'Identity'. Cannot create object of type
"Microsoft.ActiveDirectory.Management.ADPrincipal". The adapter cannot set the value of property "name".
At line:2 char:56
+ $hash = @{ $name = (Get-ADPrincipalGroupMembership $name | Select ...
+ ~~~~~
+ CategoryInfo : InvalidArgument: (:) [Get-ADPrincipalGroupMembership], ParameterBindingException
+ FullyQualifiedErrorId : CannotConvertArgumentNoMessage,Microsoft.ActiveDirectory.Management.Commands.GetADPrinci
palGroupMembership
如果您尝试使用samaccountname而不是name
?$users = Get-ADUser -Filter * -Properties * -SearchBase "DC=sectest,DC=secservizi,DC=local" | select-object samaccountname
foreach ($name in $users.samaccountname) {
$hash = [ordered]@{ $name = (Get-ADPrincipalGroupMembership -identity $name | Select-Object name) }
}
$hash