erro no script de exclusão de usuario de rede na pasta C:\users nos servidores windows

Diego Augusto Rodrigues 0 Reputation points
2024-04-01T15:14:32.6366667+00:00

Preciso de um script para apagar os usuarios 1 vez por semana em alguns servidores da empresa, achei esse exemplo porem não está funcionando, não tenho muito conhecimento em power shell, peciso de uma ajuda.

os servidores são server 2016. Esse script seria executado manual em cada servidor uma vez por semana.

Lista de usuários que não devem ser excluídos

$usuariosNaoExcluir = "Administrador"

Obter a lista de todos os servidores (você pode ler isso de um arquivo ou de outra fonte)

$servidores = @("nome do servidor")

foreach ($servidor in $servidores) {

# Remover usuários da pasta C:\Users

$usuariosLocais = Get-WmiObject Win32_UserAccount -ComputerName $servidor | Where-Object { $_.LocalAccount -eq $true }

foreach ($usuario in $usuariosLocais) {

    # Verificar se o usuário não está na lista de usuários a não excluir

    if ($usuariosNaoExcluir -notcontains $usuario.Name) {

        $perfilPath = "C:\Users\$($usuario.Name)"

        if (Test-Path $perfilPath) {

            Remove-Item -Path $perfilPath -Recurse -Force

            Write-Host "Perfil do usuário $($usuario.Name) removido do servidor $servidor."

        } else {

            Write-Host "Perfil do usuário $($usuario.Name) não encontrado no servidor $servidor."

        }

    }

}

# Remover registros do usuário no Regedit

foreach ($usuario in $usuariosLocais) {

    if ($usuariosNaoExcluir -notcontains $usuario.Name) {

        $regPath = "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\$($usuario.SID)"

        if (Test-Path $regPath) {

            Remove-Item -Path $regPath -Recurse -Force

            Write-Host "Registro do usuário $($usuario.Name) removido do Regedit no servidor $servidor."

        } else {

            Write-Host "Registro do usuário $($usuario.Name) não encontrado no Regedit no servidor $servidor."

        }

    }

}
```}
Windows Server 2019
Windows Server 2019
A Microsoft server operating system that supports enterprise-level management updated to data storage.
3,470 questions
Windows Server
Windows Server
A family of Microsoft server operating systems that support enterprise-level management, data storage, applications, and communications.
12,170 questions
Windows Server PowerShell
Windows Server PowerShell
Windows Server: A family of Microsoft server operating systems that support enterprise-level management, data storage, applications, and communications.PowerShell: A family of Microsoft task automation and configuration management frameworks consisting of a command-line shell and associated scripting language.
5,381 questions
{count} votes

1 answer

Sort by: Most helpful
  1. MotoX80 31,656 Reputation points
    2024-04-01T17:55:26.3533333+00:00

    If you don't know how to write and debug Powershell scripts, then I would suggest that you look at Delprof2 and see if that works for you.

    https://helgeklein.com/free-tools/delprof2-user-profile-deletion-tool/

    0 comments No comments