如何使用PSExec运行batch fileasynchronous?

我有一个batch file,其中包括重置计算机中的NIC。 我有一些监视软件运行在另一台机器上,监视第一个。 我想在检测到某些types的故障时使用PSExec运行这个batch file。 我遇到的问题是,因为batch file重置的网卡它杀死了PSExec的连接(我很好)。 真正的问题是,当PSExec死亡batch file停止运行(离开NIC的禁用)。

我已经尝试使用与PSExec -i选项没有运气。 任何想法基本上只是发射batch file,并没有停止时PSExec断开连接?

而且,和通常一样,在提出问题10分钟后,我想清楚了。 原来我有错误的顺序参数。 这是什么工作:

psexec \\MyServer -i -d C:\Misc\ResetNICs.bat 

使用START命令asynchronous运行。 这里的技巧是START不能直接通过PSExec调用 。 通过命令解释器调用它将解决这个限制。 像这样…

 psexec \\RemoteMachine cmd.exe /c start c:\test.bat 

或者,如果您需要更多的function,可以使用-d参数在远程计算机上调用psexec,与上面的START命令类似。

如何使用Windows资源工具包中的SOON.exe在几秒钟内安排batch file。

最好的办法是这样的:

 PsExec.exe \\server -s -d cmd /c \\servershared\shared\install.cmd 

-s(以系统身份运行)-d(非交互式)

当然远程机器必须有c $共享,你需要是“域pipe理员”

如果您不是“域pipe理员”,则可以使用-u和-pparameter passing用户和密码,例如:

 PsExec.exe \\server -u user p password -d cmd /c \\servershared\shared\install.cmd