这与http://www.computerperformance.co.uk/powershell/powershell_remote.htm有关。目前,我的测试环境中的大多数机器都在Powershell 1.0上。在这种情况下,有没有办法让我仍然能够通过Powershell 从一台机器到另一台机器进行远程调用。 我的最终动机是使用Powershell 远程启动/停止/重启Windows服务。
答案 0 :(得分:4)
您无法在1.0中使用PowerShell远程处理,但可以 use WMI或.Net ServiceController执行此任务。
$S = Get-WmiObject -Computer $Server -Class win32_service -filter "name='$ServiceName'"
$S.StopService()
$S.StartService()
事实上,如果您在客户端上安装了2.0,则可以跳过几个步骤,而不是使用Invoke-WMIMethod在其中任何一个帖子上写的方式:
Invoke-WMIMethod -Name StopService -Computer $Server -Class win32_service -filter "name='$ServiceName'"
Invoke-WMIMethod -Name StartService -Computer $Server -Class win32_service -filter "name='$ServiceName'"
注意:对于常规远程处理,您可以在每个方框上设置SSH服务器并以这种方式设置远程(并将PowerShell设置为默认shell),/n software has a pre-built solution左右。