Estou tentando criar um script que procura todos os perfis de usuário. Os perfis que não são acessados há 90 dias ou mais são excluídos. Também quero excluir suas pastas de C:\Users para liberar espaço no disco rígido.
cd C:\Users\
foreach ($dir in $OlderDays) {
Get-CimInstance -ComputerName $ComputerName -Class Win32_UserProfile -ErrorAction Stop | Where-Object {$_.Special -eq $false}
Get-CimInstance -ComputerName $profile.ComputerName -ClassName Win32_UserProfile -ErrorAction Stop | Where-Object {$_.SID -eq $profile.RegKey.SID -and $_.LocalPath -eq $profile.RegKey.LocalPath} | Remove-CimInstance -ErrorAction Stop
Remove-item -force -Path $dir -recurse
}
Recebo acesso negado em todas as pastas que tentam ser excluídas de C:\Users.
Estou usando a conta admin. A única solução que encontrei até agora é remover, mas algumas estações de trabalho têm mais de 50 contas que precisam ser excluídas e isso não é muito eficiente quando clicar com o botão direito do mouse na pasta e clicar em excluir leva 10 segundos. Takeown levou cerca de 10 minutos por conta.
remove-item : Access to the path 'C:\Users\test5456\AppData\Local\Application Data' is denied.
At line:59 char:5
+ remove-item -force -Path C:\Users\$dir -recurse
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : PermissionDenied: (C:\Users\test5456:String) [Remove-Item], UnauthorizedAccessExcepti
on
+ FullyQualifiedErrorId : RemoveItemUnauthorizedAccessError,Microsoft.PowerShell.Commands.RemoveItemCommand