Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » PowerShell - [решено] Просмотр активных сессий на RDP и сортировка вывода

Ответить
Настройки темы
PowerShell - [решено] Просмотр активных сессий на RDP и сортировка вывода

Новый участник


Сообщения: 3
Благодарности: 0

Профиль | Отправить PM | Цитировать


Добрый день, форумчане. Есть необходимость получить красивый список активных сессий RDP с указанием имени сервера.

#тут получаю список серверов из нужной OY
$servers=Get-ADComputer -filter * -SearchBase "OU...DC=..,DC=.." | select -exp name
#тут сама операция опроса
$results = foreach ($server in $servers) {qwinsta /server:$server}

на выходе получаю список сессий с логинами, id, состоянием и именем сессии. А имени сервера на котором эти сессии висят нет.
Пробовал прикрутить конструкцию вроде
foreach ($server in $servers) {qwinsta /server:$server | Format-Table -Property $server.name, username} , но результат такой же, как без FT.
Может у кого то есть идеи как это оформить?

Отправлено: 16:22, 26-07-2017

 

Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


Сценарий PowerShell script to Find RDP sessions on Servers
Это сообщение посчитали полезным следующие участники:

Отправлено: 16:35, 26-07-2017 | #2



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

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Ветеран


Сообщения: 1259
Благодарности: 861

Профиль | Отправить PM | Цитировать


Код: Выделить весь код
qwinsta /server:$server | foreach {$_.trim() -replace "\s+",","} | ConvertFrom-Csv | Select *,@{n="Server";e={$server}}
Или можно установить модуль PSTerminalServices - https://psterminalservices.codeplex.com/

Код: Выделить весь код
PS > Get-TSSession

Server          SessionID State           IPAddress       ClientName      WindowStationName UserName
------          --------- -----           ---------       ----------      ----------------- --------
localhost       0         Disconnected                                    Services
localhost       1         Active                                          Console           Contoso\User
localhost       65536     Listening                                       RDP-Tcp

Последний раз редактировалось Kazun, 26-07-2017 в 16:44.

Это сообщение посчитали полезным следующие участники:

Отправлено: 16:39, 26-07-2017 | #3


Новый участник


Сообщения: 3
Благодарности: 0

Профиль | Отправить PM | Цитировать


Iska, Kazun, Вам спасибо. На основании предложенных скриптов собрал то, что нужно.

Отправлено: 09:40, 27-07-2017 | #4


Новый участник


Сообщения: 3
Благодарности: 0

Профиль | Отправить PM | Цитировать


Хотелось бы понять что происходит с данными вот тут

foreach { (($_.trim() -replace "\s+",","))} | ConvertFrom-Csv)

вот в это строчке,

$queryResults = (qwinsta /server:$ServerName | foreach { (($_.trim() -replace "\s+",","))} | ConvertFrom-Csv)

и от чего все ломается если это foreach { (($_.trim() -replace "\s+",","))} | ConvertFrom-Csv) убрать.

Отправлено: 10:07, 27-07-2017 | #5


Старожил


Сообщения: 427
Благодарности: 72

Профиль | Отправить PM | Цитировать


Цитата saykat85:
и от чего все ломается если это foreach { (($_.trim() -replace "\s+",","))} | ConvertFrom-Csv) убрать. »
нда, запоздалый ответ но отвечу
foreach, здесь лишний,
командой qwinsta /server, можно обработать только один узел, а не массив

логичнее использовать
(query session /server:$ServerName).trim() -replace "\s+","," | ConvertFrom-Csv

trim() - отбрасывает пустые символы в начале строки и в конце
"\s+","," - замена TAB на ,

Отправлено: 14:13, 10-06-2019 | #6


Аватара для YuS_2

Crazy


Contributor


Сообщения: 1171
Благодарности: 487

Профиль | Отправить PM | Цитировать


Цитата Ageron:
"\s+","," - замена TAB на , »
если уж описывать код, то надо бы уточнять полностью: не только TAB, а и любой пробельный символ, один или более...
Код: Выделить весь код
\s == [ \f\n\r\t\v]

-------
scio me nihil scire. Ѫ


Отправлено: 16:16, 10-06-2019 | #7



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » PowerShell - [решено] Просмотр активных сессий на RDP и сортировка вывода

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Скрипт вывода активных URL из файла XXXp Вебмастеру 4 03-05-2014 12:03
[решено] просмотр активных пользователей в АД Dosmod Microsoft Windows NT/2000/2003 31 07-09-2012 14:56
2008 R2 - Зависает просмотр сессий пользователей подключённых к серверу Ыть Windows Server 2008/2008 R2 0 02-03-2012 17:29
Закрытие активных сессий с сохранением прав доступа к ресурсу deathraider Microsoft Windows NT/2000/2003 5 28-08-2009 11:55
отключение всех активных сессий одной командой XPurple Microsoft Windows NT/2000/2003 4 29-11-2005 15:03




 
Переход