簡體   English   中英

PowerShell 從特定組中刪除所有用戶

[英]PowerShell Remove all users from a specific group

我正在嘗試通過在 Windows 2008 R2 Standard、PowerShell 2.0 上執行以下命令來清除本地組 test_group 中的所有用戶。

Get-ADGroupMember "test_group" | ForEach-Object {Remove-ADGroupMember "test_group" $_ -Confirm:$false}

它拋出以下錯誤,很可能是因為我使用的是 v2.0?:

術語“Get-ADGroupMember”未被識別為 cmdlet、函數、腳本文件或可運行程序的名稱。 檢查名稱的拼寫,或者如果包含路徑,請驗證路徑是否正確,然后重試。 在第 1 行字符:18 + Get-ADGroupMember <<<< "test_group" | ForEach-Object {Remove-ADGroupMember "test_group" $_ -Confirm:$false} + CategoryInfo : ObjectNotFound: (Get-ADGroupMember:String) [], CommandNotFoundException +fullyQualifiedErrorId : CommandNotFoundException

我從這篇文章及其評論中嘗試了很多想法,但我無法解決任何問題,但我不是系統管理員,我不確定我是否遺漏了什么?: http://blogs.technet。 com/b/heyscriptingguy/archive/2009/07/28/hey-scripting-guy-how-do-i-remove-all-group-members-in-active-directory.aspx

請幫忙,我周一有大約 300 組要清理,我不想手動清理...

不確定這是不是打字錯誤,或者這就是你運行命令的方式,但它應該是 get-adgroupmember

Get-ADGroupMember "test_group" | ForEach-Object {Remove-ADGroupMember "test_group" $_ -Confirm:$false}

這對我有用,但必須刷新 ADUC 才能看到變化

編輯

首先導入 ActiveDirectory 模塊,然后嘗試運行該命令。

import-module activedirectory
Get-ADGroupMember "test_group" | ForEach-Object {Remove-ADGroupMember "test_group" $_ -Confirm:$false}

這是另一種方法:

Remove-ADGroupMember "test_group" -Members (Get-ADGroupMember "test_group") -Confirm:$false

基於珍尼亞夏皮羅的回答:

Get-ADGroup "test_group" | Set-ADGroup -Clear member
set-adgroup -clear 

對我來說棘手的部分是記住使用 ldap attr。 名稱,“成員”而不是“成員”直觀地從 get-adgroup -prop 成員中獲得

要修改對象屬性,您必須使用LDAP顯示名稱:文檔

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM