Powershell:从 OU 中删除用户列表



我目前正在进行一些广告清理,并且有一个大约 5000 个用户的列表,需要从两个 OU 中删除这些用户。每个 OU 包含 150+ 个组,用户可以是一个或多个组的成员。

我生成了两个 CSV:

List-of-users.csv
list-of-groups.csv

我正在尝试什么:

$Us = import-csv List-of-users.csv
$Gs = import-csv list-of-groups.csv
ForEach($U in $US) {
Remove-ADGroupMember -Identity $U -MemberOf $Gs
}

我试图做的是让两个列表与每个用户进行比较,这样任何用户都不会在任何组中。

每当我运行它时-WhatIf显示它正在组上执行"设置",但不会进行任何更改。

您可以尝试这样的事情,我相信您可以删除所有用户的列表,但我不确定如果用户尚未加入该组会发生什么。但这应该奏效,

$Us = import-csv List-of-users.csv
$Gs = import-csv list-of-groups.csv
ForEach($group in $Gs) {
ForEach($user in $Us) {
Remove-ADGroupMember -Identity $group -Members $user -ErrorAction SilentlyContinue
}
}

最新更新