Чи є швидкий і простий спосіб побачити час простою сеансу користувачів на сервері RDP?
Дякую
Чи є швидкий і простий спосіб побачити час простою сеансу користувачів на сервері RDP?
Дякую
Відповіді:
Менеджер послуг терміналів може отримати вам цю інформацію.
Під адміністративними інструментами -> Послуги терміналів -> Менеджер послуг терміналів
Потім виберіть хост на лівій панелі, а на середній панелі виберіть вкладку "Сеанси". Там буде перелік усіх активних сеансів, а також стовпець "IdleTime".
Вихід є інтересперований як "Дні + години: хвилини". Наприклад, якщо вихід "4 + 11: 23", користувач простоював 4 дні, 11 годин та 23 хвилини.
Також варто зазначити, що ви можете вийти з цих сеансів, натиснувши правою кнопкою миші та від'єднавши їх. Хоча, можливо, було б спочатку заплатити їм телефонний дзвінок: P
Редагувати : Ну, це хороша відповідь для версій сервера до 2012 року :( Але оскільки вони усунули Terminal Services Manager з новіших версій сервера, здається, що цей скрипт повноважень може бути найкращим варіантом: https://gallery.technet.microsoft .com / scriptcenter / Get-LoggedOnUser-Gathers-7cbe93ea
Я припускаю, що про IdleTime повідомляється за лічені хвилини, оскільки мої початкові тести відображають лише одиничні числа.
З Windows 2008 працює квастер команд .
Відображає інформацію про сеанси користувача на сервері хоста сеансу віддаленого робочого столу (RD Session Host).
Насправді сценарій PowerShell, пов'язаний у відповіді, просто виконує цю команду. OP попросив швидкий і простий спосіб, це, безумовно, швидше, ніж завантажувати і виконувати PS-скрипт.
Приклад з Windows Server 2012 R2:
C: \ Користувачі \ admin.tedd> quser USERNAME SESSIONNAME ID ДЕРЖАВНЕ ІНСТРУМЕНТИ ЧАС ЛОГОНА admin.xxxxxxxx 2 Disc 15 + 15: 12 20.07.2017 13:19 admin.xxxxx rdp-tcp # 54 3 Активний 1:39 21.07.2017 5:35 xxxxxxxx 4 диск 6 + 04: 10 21.07.2017 9:25 > admin.tedd rdp-tcp # 86 5 Активний. 9.8.2017 16:40
Кількість перед + - це дні, тому 15 + 15: 12 - це 15 днів, 15 годин і 12 хвилин.
Примітка! Документація говорить, що це те саме, що і біг query user
. Команда query
не існує на моїх серверах. Не впевнений, що це окрема установка чи частина встановлення функції.
query user
і quser
мають такий же вихід на моєму Windows Server 2012 R2
Ви можете скористатись повноваженнями для пошуку різних користувачів або кількох серверів у режимі очікування. Сценарій створений користувачем "Cookie.Monster" на техніці Get-UserSession - Аналіз результатів запиту користувача
Більш докладно про сценарій та використання ви можете ознайомитись за посиланням вище
у командному рядку (CMD) просто введіть:
запитувати користувача
Тоді він покаже вам результат.
query user
"'запит" не розпізнається як внутрішня чи зовнішня команда, функціонуюча програма чи пакетний файл. "
query user
і quser
мають такий же вихід на моєму Windows Server 2012 R2
Get-RDUserSession |ft Username,Idletime
Get-RDUserSession |select-object UserName,Servername,IdleTime,CreateTime
Лише кілька прикладів - проблема BIG - це перетворення "властивості простою", яка є деяким цілим числом часу. Приклад: 6667354, перетворений на Дні: HH: MM: SS
Я цього ще не зрозумів.
IdleTime
властивість, повернута Get-RDUserSession
командою, знаходиться в мілісекундах, і ви можете перетворити її в більш читабельний формат за допомогою функції [TimeSpan]::FromMilliseconds()
.