向多个远程桌面会话发送命令

向多个远程桌面会话发送命令

我用微软的远程桌面连接管理器管理网络上的用户。我正在寻找一种方法或另一个程序,使我可以一次向所有登录的远程连接发送命令。因此,如果我连接到 10 台 PC,我可以向它们发送命令来运行批处理文件,或者启动程序。类似于\\server\folder\run.bat

有人有什么建议吗?

答案1

您可以使用以下方式在多台计算机上同时执行相同的命令微软 SysInternals 工具包中的 PSEXEC.EXE要在多台远程计算机上运行命令:

  1. 创建文本文件PCNAMES.TXT
  2. 将远程计算机名称放入文本文件中,每行一个
  3. 使用以下语法运行 PSEXEC.EXE:
    PSEXEC.EXE @PCNAMES.TXT -s Command_To_Run.exe

这将Command_To_Run.exe在远程计算机的系统帐户上下文中运行,并假定可执行文件位于远程计算机上的系统路径中。

与您的情况相关的 PSEXEC 命令行选项:

-c 将指定程序复制到远程系统执行。如果省略此项
           选项应用程序必须位于远程系统的系统路径中。
-d 不等待进程终止(非交互式)。
-u 指定用于登录远程计算机的可选用户名。
-p 指定用户名的可选密码。如果省略此项,系统将提示您
           输入隐藏密码。
-s 在系统帐户中运行远程进程。远程命令只会
           可以访问远程计算机上的本地资源。

例子:

  1. Command_To_Run.exe从本地计算机复制到远程 PC(-c交换机),然后在那里执行:
    PSEXEC.EXE @PCNAMES.TXT -c Command_To_Run.exe

  2. 使用不同的用户帐户/密码(-u-p开关)运行远程命令。从远程 PC 访问网络资源时很有用:
    PSEXEC.EXE @PCNAMES.TXT -u UserName -p Password Command_To_Run.exe

相关内容