Автоматизированный Logoff всех пользователей с терминального сервера
23 февраля 2013
11 комментариев
Как сделать logoff забывчивых пользователей с терминального сервера в нужное время?
Долго думал каким таким простым образом можно сделать массовый logoff пользователей с терминального сервера после рабочего времени, при этом некоторых пользователей (к примеру себя) с терминала не выгонять?! Первое, что взбрело в голову, сделать групповую политику которая все за тебя сделает, покапался в настройках - такая штуковина существует, но она умеет выгонять только по таймеру, т.е. через промежуток времени (1,2 и т.д. часа), а не в указанное время. Это не всегда подходит т.к. персонал начинает работать не всегда в одно и тоже время, да и может кто то работать больше чем 8-9 часов в день. Долго бился с этой задачей, пока снова не спасла (всесильная) командная строка и несколько строк кода скрипта. Скрипт 100% работает на Windows Server 2008 R2 x64 (устанавливать дополнительно ничего не надо, все работает через штатные средства). Вот такую коду набросал:
1 2 3 4 5 6 7 8 9 10 |
@echo off rem запись информации о всех сессиях RDP в файл quser > session.txt rem Убираем тех пользователей которых не нужны выкидывать findstr /V "USER_NAME" session.txt > sessionTMP.txt rem Делаем logoff всех остальных rdp сессий for /f "skip=1 tokens=2," %%i in (sessionTMP.txt) DO logoff %%i rem удаляем временные файлы del session.txt del sessionTMP.txt |
Свежие комментарии