Была когда-то давно задача вытащить всех пользователей с привязкой по ПК. Решено было с помощью любимого PoSh. Выложить данный скрипт натолкнул недавний вопрос на форуме TechNet.
cls #Создаем фильтр проверки наличия компа в сети Filter Where-Online { $ping = new-object System.Net.NetworkInformation.Ping trap {Write-Verbose "ping error"; Continue} if ($ping.send($_).Status -eq "Success" ) { $_ } } $Comp_list=@{} #Получаем компы из нужной OU в AD $comp_arr= Get-QADComputer -SearchRoot "ou=test, ou=workstations,dc=moscow,dc=domain,dc=ru" | foreach {$_.dnsname} | where-online #загоняем в цикл foreach ($pc in $comp_arr) { #Запрос к WMI даленного компа $CS = Gwmi Win32_ComputerSystem -Comp $pc "Machine Name: " + $CS.Name "Logged On User: " + $CS.UserName #add new object $Comp_list[$CS.Name] = new-object System.Management.Automation.PSObject $Comp_list[$CS.Name] | add-member noteproperty CompName $CS.Name $Comp_list[$CS.Name] | add-member noteproperty User $CS.UserName } #export to csv $Comp_list | select -expand values| export-csv "d:\temp\exp.csv" -Encoding Unicode
После выгрузки мы имеем CSV файл, что с ним делать? Я лично импортирую его в Excel, c разделителем по запятой. Делается это примерно так:


Нет комментариев