-1

我们有域用户通过 RDP 使用应用程序的远程实例。该应用程序有很多错误,他们的会话需要经常重置。我想构建一个脚本,使用来自客户端的 psexec 来重置服务器上的会话。

psexec \\server -u user -p pass query session

显示所有会话

psexec \\server -u user -p pass reset session_id

根据 id 重置会话。

我需要一种基于用户名而不是会话名称或 ID 来重置会话的方法

4

1 回答 1

1

试试这个命令组合来获取用户名,然后你可以通过 id 终止会话。您将需要来自Windows Sysinternals的PsLoggedOn 这是解释命令的链接。如何检查谁登录了您的系统

PSLOGGEDON -L \\remotecomputeror 

PSEXEC \\remotecomputer NET CONFIG WORKSTATION | FIND /I " name "

PSEXEC \\remotecomputer NET NAME

PSEXEC \\remotecomputer NETSH DIAG SHOW COMPUTER /V | FIND /i "username" 

FOR /F %%A IN ('REG Query \\remotecomputer\HKU ˆ| FINDSTR /R /B /C:"HKEY_USERS\\S-1-5-[0-9][0-9]-[0-9-]*$"') DO ( 
FOR /F "tokens=3 delims=\" %%B IN ('REG Query "\\remotecomputer\%%A\Volatile Environment"') DO ( 
SET LoggedinUser=%%B 
) 
) 
于 2013-08-07T22:39:48.757 回答