Скрипт для завершения сеансов удаленного рабочего стола пользователя

Скрипт для завершения сеансов удаленного рабочего стола пользователя

Скрипт с использованием утилит logoff и qwinsta

Администрируя терминальные сервера с Windows, не редко возникает надобность завершить сеанс локального пользователя компьютера на удаленном терминальном сервере. Использовать для этого стандартные методы, вроде захода на нужный терминальный сервер с последующим завершением сеанса пользователя через Диспетчер задач, достаточно времязатратно. Есть альтернативный способ, который заключается в использовании утилиты командной строки logoff, которая позволяет завершить удаленно сеанс нужного пользователя. Загвоздка только в том, что программе требуется указывать идентификатор сеанса пользователя, и для этого потребуется использовать утилиту qwinsta. Скомбинировав данные команды в рамках одного bat файла, можно создать удобный скрипт, завершающий удаленные сеансы пользователя на указанных серверах.

Перед использованием скрипта, замените TERMSERV1 и TERMSERV2 на имена ваших терминальных серверов.
@echo off
setlocal

set servers=TERMSERV1 TERMSERV2

for %%s in (%servers%) do (
	qwinsta /server:%%s | for /f "tokens=3" %%i in ('findstr /I "%username%"') do logoff /server:%%s %%i /v
)

Работа скрипта была проверена в Windows XP, Windows 7 и Windows 10, с удаленным подключением к Windows Server 2008 R2.

Была ли эта статья Вам полезна?

Добавить комментарий

Ваш адрес email не будет опубликован.

Напоминаем Вам, что Ваше сообщение будет опубликовано только после проверки администратором сайта. Обычно это занимает 1-2 рабочих дня.