Виводимо список користувачів на віддаленому комп'ютері.
Іноді потрібно з'ясувати, хто з користувачів в даний момент працює на віддаленому комп'ютері. Це дуже просто зробити за допомогою PowerShell і WMI.
При вході в систему користувача запускається екземпляр процесу explorer.exe, тому дізнавшись, хто є власником цього процесу ми з'ясуємо і то, хто в даний момент знаходиться в системі.Для цього створюємо скрипт такого змісту:
$ ComputerName = Read-Host "Enter remote computer name"
$ credential = Get-Credential
Get-WMIObject Win32_Process -filter ' name = "explorer.exe" `-computername $ computername -Credential $ credential |
ForEach-Object {
$ owner = $ _. GetOwner ()
'{0} \ {1} `-f $ owner.Domain, $ owner.User} |
Sort-Object |
Get-Unique |
ForEach-Object {
$ rv = 1 | Select-Object ComputerName, User
$ rv.ComputerName = $ computername
$ rv.User = $ _
$ rv
}
Запускаємо скрипт, вказуємо ім'я комп'ютера, облікові дані для підключення і отримуємо список користувачів, залягання на цьому комп'ютері.
Ось так просто, і не потрібно ніяких додаткових оснащень.
.