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

#查询出相应的OU下面的离职账号 $users = get-aduser -Filter * -SearchBase "OU=xxxx,DC=it581,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 "移除完成!!"

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