需要一些帮助。
我需要使用PowerShell脚本获取远程计算机的本地用户列表及其所属的组。
我试过了:
Get-LocalUser
Get-LocalGroup
Get-LocalGroupMember
此外:
gwmi win32_UserAccount
gwmi win32_group
但它非常缓慢,并且消耗的信息超过了消耗时间的要求。
我希望输出格式如下:
User Memberof
------ --------------------
abc12 Administrators
efg23 remote desktop users
hij45 Administrators,Backup Operators,users
xyz56 remote desktop users,Backup Operators
先谢谢, 干杯。
答案 0 :(得分:0)
我使用ADSI,它很快。
$RemoteComputerName = 'RemoteComputer'
$LocalGroup = 'Remote Desktop Users'
$ADSI = [ADSI]("WinNT://$RemoteComputerName,Computer")
$Group = $ADSI.PSBase.Children.Find($LocalGroup,'Group')
$Group.PSBase.Invoke('Members').Foreach{ $_.GetType().InvokeMember('Name','GetProperty',$null,$_,$null) }