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

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

Скрипт с использованием утилит 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 рабочих дня.