Windows 7:使用 PsExec 自动登录网络帐户的脚本

Windows 7:使用 PsExec 自动登录网络帐户的脚本

在我工作的地方(在学校的服务台),经常会发生这样的情况:一项带有非常繁琐和/或浪费要求的新政策生效,而我通常是唯一一个试图为该问题创建更好或更有效的解决方案的人。

在这种情况下,需要定期对有 20-30 台网络计算机的房间进行手动测试。这涉及手动登录房间中的每台计算机并启动各种程序并检查情况。我一直在用 psexec 编写一个 python 脚本,该脚本似乎可以很好地在所有计算机登录后启动测试所需的程序,因此最繁琐的部分是登录本身。

我正在寻找任何命令提示符 .exe、.bat、.vbs,无论什么都可以运行,以模拟使用硬编码用户名和密码登录 Windows。如果您不知道 PsExec 是什么,它只是让我以管理员身份在远程计算机上运行我想要的任何内容,我只需要知道我需要运行什么!如果没有类似的东西,我可以考虑运行编译的 autohotkey 或类似的东西,但我还没有成功,正在寻找更好的解决方案。

感谢您的阅读和提供的任何帮助。

因为第一个答案似乎没有解决我的想法,所以我将把这些信息添加到我的问题中

我已经知道如何很好地使用 PsExec,我正在寻找一种运行进程/命令的方法,该进程/命令将使用凭据(以交互方式/图形方式)“登录”(字面意思)到计算机。例如,我走到计算机前,输入用户名和密码,然后按 Enter。然后屏幕显示“欢迎/准备您的桌面”。然后出现网络帐户桌面。我想使用 psexec 启动/模拟此操作。

由于我的措辞不当,因此再次进行了编辑

这是一个一般性问题,试图完成一项特定任务,这可能有助于其他需要执行此操作的人。我已经开发并拥有一个良好的工作脚本,该脚本通过 python 在一台计算机上启动一组 PxExec 进程并将它们分发到我需要测试的所有计算机上。没有在所有其他计算机上执行 python。我不需要这部分的帮助。我无法从一台计算机远程执行的唯一步骤是登录计算机,以便您可以查看已启动的进程。这部分需要手动完成,我希望消除该问题。

理想的情况是:

Psexec 在计算机 A 上启动,然后计算机 B 实际登录到桌面,就像用户走上前去,输入用户名和密码,然后按下回车键一样。

谢谢

答案1

参考 执行程序

句法

psexec \\computer[,computer[,..] [options] command [arguments]

psexec @run_file [options] command [arguments]

选项

computer psexec 将在其上运行命令的计算机。默认 = 本地系统。要针对当前域中的所有计算机运行,请输入“\\*”

@run_file 在指定的文本文件中列出的每台计算机上运行命令。

command 要执行的程序的名称

arguments 要传递的参数(文件路径必须是目标系统上的绝对路径)

...

-p psswd 指定用户的密码(可选)。以明文形式传递。如果省略,系统将提示您输入隐藏密码。

...

-u user 指定登录的用户名到远程计算机(可选)。

...

当您指定用户名时,远程进程将在该帐户中执行,并可以访问该帐户的网络资源。

如果省略用户名,远程进程将以您执行的同一帐户运行PsExec,但由于远程进程正在模拟,因此它将无法访问远程系统上的网络资源。

如果您指定了备用用户名/密码,PsExec则将以明文形式发送密码。如果未经授权的网络嗅探器可以拦截本地和远程系统之间的流量,则这可能是一种安全风险。

例子

psexec \\machine_name -u machine_name\user_name -p user_password somecommands

有趣的阅​​读

PsExec 在远程系统上执行进程并将输出重定向到本地系统作者:Mark Russinovich(PsExec 的作者)

相关内容