我正在清理继承的Domain Admins组并删除不再需要的服务帐户。我试图提取Domain Admins组的组成员身份并将其提供给Get-ADUser
,但收效甚微。
$name = Get-ADGroupMember "domain admins" | select -ExpandProperty Name
Foreach-Object {
Get-ADUser -Filter { Name -Like "$name"} -Properties * | FT Name, LastLogonDate
}
如果我自己运行Get-ADGroupMember
它就可以了。如果我使用列表中的名称(而不是Get-ADUser
变量)运行$name
,则可以正常运行。但是,当我试图将它们绑在一起时,它不起作用。
答案 0 :(得分:2)
我很高兴你能够使它成功,但我想提供一些建议。当你真正需要的只是-Properties *
时,首先不要使用LastLogonDate
。您提取的数据超出了您的需求。此外,您甚至不需要ForEach
循环,因为Get-Aduser
将非常接受管道输入。
Get-ADGroupMember "domain admins" | Get-ADUser -Properties LastLogonDate |
Select Name,LastLogonDate
或者你真的想要控制台输出,应该是标准输出
Get-ADGroupMember "domain admins" | Get-ADUser -Properties LastLogonDate |
Format-Table Name,LastLogonDate -AutoSize
答案 1 :(得分:1)
感谢@EBGreen,您的评论指出了我正确的方向。我能够通过以下方式得到我需要的东西:
Get-ADGroupMember "domain admins" | select -ExpandProperty SamAccountName | % {
$name=$_
Get-ADUser $_ -Properties *
} | FT Name, LastLogonDate -AutoSize