Powershell - распечатка во время цикла

Я должен пройти через OU и удалить все группы memberOf для всех пользователей. Сценарий, который у меня есть, работает, но я не могу распечатать его при обработке каждого пользователя. Поэтому, когда я запускаю скрипт, он работает, но ничего не происходит, пока он не завершится. Для разума я хочу ВИДЕТЬ текущее имя входа, которое обрабатывается, но я не могу, на всю жизнь, заставить команду write-host записать мой экран.

Вот мой код:

$users = get-aduser -filter * -searchbase "ou=disabled,dc=corp,dc=test,dc=org" | Sort-Object -Property Name

Function removeMemberShips {
    Param( [string] $SAMAccountName)

    $user = get-aduser $SAMAccountName -properties memberof

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

1 ответ

Решение

Наиболее очевидный способ выглядит следующим образом:

$users | %{
    removeMemberShips $_.SAMAccountName
    Write-Host $_.SAMAccountName
}
Другие вопросы по тегам