В очередной раз встала задача установки программы на группу удалённых компьютеров.

Сделать это я решил с помощью службы удалённых рабочих столов RDP. Дело осложнялось тем, что на некоторых компьютерах из группы работали пользователи. Я подумал, что неплохо было бы получить список компьютеров с информацией, какой из компьютеров занят пользователем, а какой нет.

В итоге получился скрипт, который выводит имена компьютеров и пользователей, которые за ними работают.

 
  1. Import-Module ActiveDirectory  
  2.  $Comp = Get-ADComputer -filter * -SearchBase "OU=Тест,OU=Компьютеры,DC=nizhnepopov,DC=local"  
  3.  foreach ($Comp in $Comps) {Get-WmiObject Win32_ComputerSystem -Computer "$Comp" | Format-List -Property Name,UserName}