【问题标题】:Remove users from AD group using Powershell使用 Powershell 从 AD 组中删除用户
【发布时间】:2014-01-28 12:39:30
【问题描述】:

我创建了一个简短的 sn-p,它应该从特定 AD 组中删除列表中的成员。

Remove-QADGroupMember -Identity "usergroup" -Member (Get-Content "C:\Users\blabla\users.txt")

问题在于该列表包含大量不存在的旧用户。一旦脚本遇到无效用户,它就会停止。有没有办法让 PS 忽略它无法找到的用户,而不会使这变得太复杂?

【问题讨论】:

    标签: windows powershell active-directory system-administration


    【解决方案1】:

    我就是这样做的,因为我需要删除一组组的所有用户,而不是一个用户列表。

    • 找到为项目设置的组

      $OldGroups = Get-ADGroup -filter {Name -like "<*ProjectName>"}

    • 清除组的 Members 属性,有效地删除所有用户

      $OldGroups | foreach {Set-ADGroup $_ -Clear Member}

    【讨论】:

      【解决方案2】:

      您可以在 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 是关于这个主题的好帖子。

      【讨论】:

      • 这似乎有效!我会确保阅读该主题。谢谢
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-09-23
      • 1970-01-01
      • 2023-04-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多