我已经创建了一个应该从特定AD组中删除列表中的成员的短片段。使用Powershell从AD组中删除用户
Remove-QADGroupMember -Identity "usergroup" -Member (Get-Content "C:\Users\blabla\users.txt")
问题是该列表包含很多旧的不存在的用户。只要脚本遇到无效用户,它就会停止。有没有什么办法可以让PS忽略它不能找到的用户?
我已经创建了一个应该从特定AD组中删除列表中的成员的短片段。使用Powershell从AD组中删除用户
Remove-QADGroupMember -Identity "usergroup" -Member (Get-Content "C:\Users\blabla\users.txt")
问题是该列表包含很多旧的不存在的用户。只要脚本遇到无效用户,它就会停止。有没有什么办法可以让PS忽略它不能找到的用户?
您可以在Powershell中使用try/catch。它看起来像:
Get-Content "C:\Users\blabla\users.txt" | foreach {
Try {
Remove-QADGroupMember -Identity "usergroup" -Member $_
}
Catch [System.Exception] {
"$_ isn't exit"
}
}
我没有运行代码。你可以对它进行一些调整。
http://blogs.technet.com/b/heyscriptingguy/archive/2010/03/11/hey-scripting-guy-march-11-2010.aspx在这个话题上是一个很好的帖子。
这就是我做到这一点的原因,因为我需要删除所有用户群,而不是用户列表。
查找我,是建立一个项目
$OldGroups = Get-ADGroup -filter {Name -like "<*ProjectName>"}
清除组的Members
财产有效地消除所有的用户
$OldGroups | foreach {Set-ADGroup $_ -Clear Member}
这似乎工作!我会确保阅读这个话题。谢谢 – stayg