如何从Windows向Windows分发命令


12

如何从Windows计算机在其他Windows计算机上编写远程命令脚本?

例如,在* nix- * nix网络上,我可以这样做ssh wu@otherbox foo,并且只要正确设置了密钥,foo运行并且ssh客户端返回了返回代码。


我尚无法发表评论,否则我将在此处发表评论:Psexec第三名,并补充说明可以通过命令行参数/ accepteula接受EULA
NPS

Answers:


22

psexec- http://technet.microsoft.com/zh-CN/sysinternals/bb897553

PsExec是一种轻巧的telnet替代品,它使您可以在其他系统上执行进程,并为控制台应用程序提供完整的交互性,而无需手动安装客户端软件。

另一种选择是编写Powershell或vbscript(使用WMI)。


6

WMI命令行工具是一个不错的选择:

wmic.exe /node:somecomputer process call create "c:\bin\uphclean\uphclean.exe -install"


2

如果您正在寻找脚本编制方法,则还有另一种方法。除了psexec和wmic之外,还可以通过powershell来完成。远程Powershell仅适用于Windows 7和Vista,当然也适用于Server 2008。

invoke-command -computername YourTarget01 -scriptblock {
    $Object=get-something $Wibble
    $Data1=$Object.method
    }

要使用此功能,需要在目标计算机上打开并配置WinRM。这些东西可以通过GPO推送,因此您不必在任何地方手动配置它。便于大规模部署。对于复杂的操作,创建一个会话对象是个好主意,这样您就不会在每次碰到计算机时都旋转一个新的对象:

$Session=new-pssession -ComputerName YourTarget01
invoke-command -Session $Session -Scriptblock { }

默认情况下,凭据是调用者的凭据,尽管可以将其他凭据指定为选项。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.