批量移除AD组中的用户

从组中移除用户

Remove-adgroupmember -identity group02 -members  san_zhang

批量移除组中的用户
for /f ""skip=1 eol=;tokens=1-3 delims=,"" %%a in (E:\disuser.csv) do foreach{remove-adgroupmember -identity group02 -members %%a -confirm:$false}"

 

最近工作收到一个需求,需要对离职人员的账号清理所属组并记录下日志,所以研究了下如何使用Powershell来实现此功能:

#查询出相应的OU下面的离职账号
$users = get-aduser -Filter * -SearchBase ""OU=xxxx,DC=test,DC=com"" | foreach {if ($.enabled -eq $false){echo $.samaccountname}}
#获取当前的日期
$data=get-date -Format 'yyyyMMdd'
#使用循环记录日志并删除对应的组
foreach($user in $users)

  {
Get-ADUser -Identity $user -Properties * |select name,memberof |fl >>d:\$data.txt
Get-ADPrincipalGroupMembership -Identity $user | where{$.name -notlike ""domain users""} | % { Remove-ADPrincipalGroupMembership -Identity $user -MemberOf $ -Confirm:$false -ErrorAction SilentlyContinue }
  }
write-host ""移除完成!!""

以上就是实现此需求的脚本。

posted @ 2020-07-12 19:01  会飞的老虎  阅读(1078)  评论(2编辑  收藏  举报