Solución:
Para los empleados de Google, otra forma de obtener una lista de usuarios es utilizar:
Get-WmiObject -Class Win32_UserAccount
De http://buckeyejeeps.com/blog/?p=764
$adsi = [ADSI]"WinNT://$env:COMPUTERNAME"
$adsi.Children | where {$_.SchemaClassName -eq 'user'} | Foreach-Object {
$groups = $_.Groups() | Foreach-Object {$_.GetType().InvokeMember("Name", 'GetProperty', $null, $_, $null)}
$_ | Select-Object @{n='UserName';e={$_.Name}},@{n='Groups';e={$groups -join ';'}}
}
Actualización como alternativa a la excelente respuesta de 2010:
Ahora puede usar Get-LocalGroupMember, Get-LocalGroup, Get-LocalUser, etc. para obtener y mapear usuarios y grupos
Ejemplo:
PS C:WINDOWSsystem32> Get-LocalGroupMember -name users
ObjectClass Name PrincipalSource
----------- ---- ---------------
User DESKTOP-R05QDNLsomeUser1 Local
User DESKTOP-R05QDNLsomeUser2 MicrosoftAccount
Group NT AUTHORITYINTERACTIVE Unknown
Puede combinar eso con Get-LocalUser. Alias glu también se puede utilizar en su lugar. Existen alias para la mayoría de los nuevos cmndlets.
En caso de que algunos se pregunten (sé que no preguntaste sobre esto), agregar usuarios podría hacerse, por ejemplo, así:
$description = "Netshare user"
$userName = "Test User"
$user = "test.user"
$pwd = "pwd123"
New-LocalUser $user -Password (ConvertTo-SecureString $pwd -AsPlainText -Force) -FullName $userName -Description $description
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)