0

我有一些从我的谷歌搜索中拼凑起来的现有代码。

大家好,

我花了一些时间在谷歌上搜索找到所需的代码,这就是我下面的内容。我想要做的是记录从用户中删除的组。

a) 进入本地文本 (.log) 文件或 b) 进入用户的“Notes”字段。

如果我使用 quest 插件,我已经找到了有关如何进行日志记录的代码,但无法理解如何在不使用 quest 的情况下使其适合。

将其作为学习 + 工作功能任务执行,以加快禁用用户的速度。

Import-Module activedirectory -ErrorAction silentlycontinue
Add-PSSnapin Microsoft.Exchange.Management.PowerShell.Admin -ErrorAction silentlycontinue
$username = read-host "Username"
$users= get-aduser $username

Function RemoveMemberships
{
param([string]$SAMAccountName) 
$user = Get-ADUser $SAMAccountName -properties memberof

$userGroups | %{get-adgroup $_ | Remove-ADGroupMember -confirm:$false -member    $SAMAccountName}
$userGroups | %{get-adgroup $_ | Remove-ADGroupMember -confirm:$false -member    $SAMAccountName}    $userGroups = $user.memberof
$userGroups = $null
}

$users | %{RemoveMemberships $_.SAMAccountName}

Move-ADObject $users -TargetPath "OU=Disabled Users,DC=contoso,DC=com" -PassThru | Disable-ADAccount

编辑:包含 Exchange PSSnapin 是为了通过禁用 GAL 来增强。我有代码,但没有包含在其中。

4

1 回答 1

0

使用 Write-Host 的简单屏幕答案

$userGroups | %{Write-Host "Removing user from group $_"; get-adgroup $_ | Remove-ADGroupMember -confirm:$false -member $SAMAccountName}
于 2013-06-24T23:09:03.733 回答