【发布时间】:2021-02-19 23:59:59
【问题描述】:
我需要从 Active Directory 中的特定组中获取特定用户。
到目前为止,我有这个:
$Groupnames = get-adgroup -Filter "name -like '$Groupfilter'" -Properties * -SearchBase $Grouppath |
Select-Object Name, @{
Name='Username';
Expression={
Get-ADGroupMember -identity $($_.Name) -Recursive |
Get-ADUser -Property SamAccountName |
Select -ExpandProperty SamAccountName
}
}
这可以获取带有名称的组。现在我想从这些组中获取所有用户。什么有效,但格式完全关闭。我想要这个:
Name Username
---- --------
Group1 user1adm
Group2 {user1adm, user1, user2, user2adm...}
Group3 {user1adm, user3, user2adm, user6...}
但我明白了:
{user1adm, user1, user2, user2adm...}
使用这种格式,我无法看到所有用户。
我最后的目标也是排除以adm结尾的用户,但我不知道该怎么做。
你能帮帮我吗?
【问题讨论】:
-
将
Select Name更改为Select -Expand Name -
是的,它在某种程度上有所帮助,但它仍然是这样的:
{user1, user1adm, user2, user3...}为什么最后有{}和...。它不显示其余用户。 -
这只是 PowerShell 表示属性中有多个值的方式。你期望什么输出做?
-
我想将它们放入 CSV
{}不是一个大问题,我可以摆脱它们。但它没有显示所有用户是更大的问题。 -
对,但是 CSV 文件会是什么样子?每行/记录一个用户?
标签: powershell active-directory