如何用Powershell脚本实现自动移除离职用户的所属组并保存日志

最近工作收到一个需求,需要对离职人员的账号清理所属组并记录下日志,所以研究了下如何使用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 "移除完成!!"

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