как в powershell выкинуть с удаленного сервера всех, кроме указанных пользователей?

Собственно хочу выкинуть с терминального сервера всех пользователей, кроме тех, кого я укажу Использую такой скрипт:

`$server = 'MyServer' $username = $env:USERNAME

$session = ((quser /server:$server | ? { $_ -match $username }) -split ' +')[2]

logoff $session /server:$server'`

Как в него добавить исключения по username, что бы не выкидывал указанных пользователей?


Ответы (1 шт):

Автор решения: Vitek

Получилось таким скриптом, делает LogOff для всех активных пользователей кроме выбранных:

   $Servers= "server"
   $Username1 = "user1"
   $Username2 = "user2" 
   foreach($Server in $Servers)
 {
    try {
        query user /server:$Server 2>&1 | select -skip 1 | ? {(($_ -split "\s+")[-7] -ne $Username1) -and (($_ -split "\s+")[-7] -ne $Username2)} | % {logoff ($_ -split "\s+")[-6] /server:$Server /V}
    }
    catch {}
    }
→ Ссылка