我有几台计算机连接到网络,我想创建批处理文件来自动处理它们。我已经创建了一个用于立即关闭计算机的文件。它非常简单,我只是为了讨论而发布它。
@echo off
shutdown -s -m \\Slave1-PC
shutdown -s -m \\Slave2-PC
shutdown -s -m \\Slave3-PC
现在我想在这些机器上执行程序。假设“\Slave1-PC\d\example.exe”下有一个“example.exe”文件
使用
call \\Slave1-PC\\d\\example.exe
通过网络在我的计算机上运行它,我没有想出其他任何东西。如果可能的话,我不想使用任何 psexec。非常感谢您的帮助。
彼得
答案1
如果你真的无法使用 psexec,那么你可能需要安装一些东西调度任务(更好)或在(更差)。
不过,我认为你可能要花更多的时间来尝试让它们做你想做的事,而不是花在设置上执行程序。Psexec 使用起来确实非常简单,它只需要在执行控制的机器上可用(作为可执行文件;不需要安装程序),而不是在每台被控制的机器上。
从最简单的角度来看,PsExec 非常简单:
psexec -accepteula \\RemoteMachine Command Arguments
此外,Mark Russinovich(PsExec 的作者)写道入门书“描述了 PsExec 的工作原理并给出了如何使用它的提示”。除此之外,“PsExec /?”和手册确实提供了相当好的信息。
答案2
PSEXEC
使用起来非常简单。使用它的方式与使用CALL
或基本相同START
(除非您向其提供目标计算机以及用户名和密码(如果需要)),甚至可以启动 GUI 应用程序,尽管您无法看到或控制它。
当用于启动具有正常STDIN
/控制台输入和STDOUT
输出的命令行程序时STDERR
,该程序或批处理文件将像您在自己的机器上运行它一样。
我在一天之内就启动并使用PSEXEC
它运行诊断程序、defrag.exe、防病毒程序,并在一个拥有超过 2,000 台 PC 的商店中收集系统信息,无需更多介绍。PSEXEC /?
跑步:
PSEXEC \\COMPUTER -u Administrator -p password CMD.exe
COMPUTER
而且,您会看到与走过去输入ALT+ RCMD时相同的交互式命令提示符ENTER。速度可能会慢一点,但除非您滚动浏览大量文本,否则不会注意到。即使超过 10 Base-T 也不会太糟糕。
作为一名能够在几乎每台计算机上使用相同用户名/密码的网络管理员,我发现除了最封闭的计算机之外,我甚至不需要使用用户名或密码。这...
PSEXEC \\COMPUTER CMD
...通常就足够了。
要使用您的示例类型:
psexec \\Slave1-PC d:\example.exe
或者:
psexec \\Slave1-PC cmd
d:
example
PSEXEC
如果需要,将会提示您输入用户名和密码。
第一次连接到计算机时,您可能需要(或让其他人)通过远程系统上的弹出窗口允许连接。