Powershell远程命令

时间:2009-01-14 17:53:50

标签: .net powershell

我正在尝试在PowerShell中的远程计算机上运行get-service命令。在做了一些研究之后,看起来这只是n powershell 2 CTP,我无法使用,因为我需要使用与交换机一起安装的powershell版本,这通常是1.看来-computerName开关只能在获得 - ps 2中的服务。 所以我几乎决定不采取行动,但是在我放弃它之前想看看这里是否有人有一个聪明的解决方案。

3 个答案:

答案 0 :(得分:6)

这些都是很好的答案,但它们只能帮助您使用服务。你想要的是一些适合任何事情的东西:

WINRS是你最好的朋友!

[4120:0]PS> winrs -r:localhost powershell get-service h*

Status   Name               DisplayName
------   ----               -----------
Running  hidserv            Human Interface Device Access
Running  hkmsvc             Health Key and Certificate Management
Stopped  HomeGroupListener  HomeGroup Listener
Running  HomeGroupProvider  HomeGroup Provider

BTW - WINRS使用WS-MAN,这意味着它可以跨防火墙工作。

实验!请享用!接合!

Jeffrey Snover [MSFT] Windows管理合作伙伴架构师

答案 1 :(得分:5)

好吧,你可以直接去WMI获取服务信息。

gwmi Win32_Service -computername FOO

答案 2 :(得分:4)

这将在v1中起作用:

[System.ServiceProcess.ServiceController] :: GetServices(“String machineName”)