Get-WSManInstance

显示由资源 URI 指定的资源实例的管理信息。

语法

Get-WSManInstance
   [-ApplicationName <String>]
   [-ComputerName <String>]
   [-ConnectionURI <Uri>]
   [-Dialect <Uri>]
   [-Fragment <String>]
   [-OptionSet <Hashtable>]
   [-Port <Int32>]
   [-ResourceURI] <Uri>
   [-SelectorSet <Hashtable>]
   [-SessionOption <SessionOption>]
   [-UseSSL]
   [-Credential <PSCredential>]
   [-Authentication <AuthenticationMechanism>]
   [-CertificateThumbprint <String>]
   [<CommonParameters>]
Get-WSManInstance
   [-ApplicationName <String>]
   [-BasePropertiesOnly]
   [-ComputerName <String>]
   [-ConnectionURI <Uri>]
   [-Dialect <Uri>]
   [-Enumerate]
   [-Filter <String>]
   [-OptionSet <Hashtable>]
   [-Port <Int32>]
   [-Associations]
   [-ResourceURI] <Uri>
   [-ReturnType <String>]
   [-SessionOption <SessionOption>]
   [-Shallow]
   [-UseSSL]
   [-Credential <PSCredential>]
   [-Authentication <AuthenticationMechanism>]
   [-CertificateThumbprint <String>]
   [<CommonParameters>]

说明

Get-WSManInstance cmdlet 检索由资源统一资源标识符 (URI) 指定的管理资源的实例。 检索到的信息可以是复杂的 XML 信息集(对象)或简单值。 此 cmdlet 等效于标准 Web Services for Management (WS-Management) Get 命令。

此 cmdlet 使用 WS-Management 连接/传输层来检索信息。

示例

示例 1:从 WMI 获取所有信息

PS C:\> Get-WSManInstance -ResourceURI wmicimv2/win32_service -SelectorSet @{name="winrm"} -ComputerName "Server01"
xsi                     : http://www.w3.org/2001/XMLSchema-instance
p                       : https://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_Service
cim                     : http://schemas.dmtf.org/wbem/wscim/1/common
type                    : p:Win32_Service_Type
lang                    : en-US
AcceptPause             : false
AcceptStop              : true
Caption                 : Windows Remote Management (WS-Management)
CheckPoint              : 0
CreationClassName       : Win32_Service
Description             : Windows Remote Management (WinRM) service implements the WS-Management protocol for remote
management. WS-Management is a standard web services protocol used for remote software and
hardware management. The WinRM service listens on the network for WS-Management requests
and processes them. The WinRM Service needs to be configured with a listener using the
winrm.cmd command line tool or through Group Policy in order for it to listen over the
network. The WinRM service provides access to WMI data and enables event collection. Event
collection and subscription to events require that the service is running. WinRM messages
use HTTP and HTTPS as transports. The WinRM service does not depend on IIS but is
preconfigured to share a port with IIS on the same computer.  The WinRM service reserves the
/wsman URL prefix. To prevent conflicts with IIS, administrators should ensure that any
websites hosted on IIS do not use the /wsman URL prefix.
DesktopInteract         : false
DisplayName             : Windows Remote Management (WS-Management)
ErrorControl            : Normal
ExitCode                : 0
InstallDate             : InstallDate
Name                    : winrm
PathName                : C:\Windows\System32\svchost.exe -k NetworkService
ProcessId               : 948
ServiceSpecificExitCode : 0
ServiceType             : Share Process
Started                 : true
StartMode               : Auto
StartName               : NT AUTHORITY\NetworkService
State                   : Running
Status                  : OK
SystemCreationClassName : Win32_ComputerSystem
SystemName              : SERVER01
TagId                   : 0
WaitHint                : 0

此命令返回 Windows Management Instrumentation (WMI) 公开的有关远程 server01 计算机上的 WinRM 服务的所有信息。

示例 2:获取后台处理程序服务的状态

PS C:\> Get-WSManInstance -ResourceURI wmicimv2/win32_service -SelectorSet @{name="spooler"} -Fragment Status -ComputerName "Server01"
XmlFragment=OK

此命令仅返回远程 server01 计算机上的 后台处理程序 服务的状态。

示例 3:获取所有服务的终结点引用

PS C:\> Get-WSManInstance -Enumerate -ResourceURI wmicimv2/win32_service -ReturnType EPR
xsi                     : http://www.w3.org/2001/XMLSchema-instance
p                       : https://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_Service
cim                     : http://schemas.dmtf.org/wbem/wscim/1/common
type                    : p:Win32_Service_Type
lang                    : en-US
AcceptPause             : false
AcceptStop              : false
Caption                 : Visual Studio 2008 Remote Debugger
CheckPoint              : 0
CreationClassName       : Win32_Service
Description             : Allows members of the Administrators group to remotely debug server applications using Visual
Studio 2008. Use the Visual Studio 2008 Remote Debugging Configuration Wizard to enable this
service.
DesktopInteract         : false
DisplayName             : Visual Studio 2008 Remote Debugger
ErrorControl            : Ignore
ExitCode                : 1077
InstallDate             : InstallDate
Name                    : msvsmon90
PathName                : "C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\Remote Debugger\x86\msvsmon.exe" /service msvsmon90
ProcessId               : 0
ServiceSpecificExitCode : 0
ServiceType             : Own Process
Started                 : false
StartMode               : Disabled
StartName               : LocalSystem
State                   : Stopped
Status                  : OK
SystemCreationClassName : Win32_ComputerSystem
SystemName              : COMPUTER01
TagId                   : 0
WaitHint                : 0
...

此命令将返回对应于本地计算机上的所有服务的终结点引用。

示例 4:获取满足指定条件的服务

PS C:\> Get-WSManInstance -Enumerate -ResourceURI wmicimv2/* -Filter "select * from win32_service where StartMode = 'Auto' and State = 'Stopped'" -ComputerName "Server01"
xsi                     : http://www.w3.org/2001/XMLSchema-instance
p                       : https://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_Service
cim                     : http://schemas.dmtf.org/wbem/wscim/1/common
type                    : p:Win32_Service_Type
lang                    : en-US
AcceptPause             : false
AcceptStop              : false
Caption                 : Windows Media Center Service Launcher
CheckPoint              : 0
CreationClassName       : Win32_Service
Description             : Starts Windows Media Center Scheduler and Windows Media Center Receiver services
at startup if TV is enabled within Windows Media Center.
DesktopInteract         : false
DisplayName             : Windows Media Center Service Launcher
ErrorControl            : Ignore
ExitCode                : 0
InstallDate             : InstallDate
Name                    : ehstart
PathName                : C:\Windows\system32\svchost.exe -k LocalServiceNoNetwork
ProcessId               : 0
ServiceSpecificExitCode : 0
ServiceType             : Share Process
Started                 : false
StartMode               : Auto
StartName               : NT AUTHORITY\LocalService
State                   : Stopped
Status                  : OK
SystemCreationClassName : Win32_ComputerSystem
SystemName              : Server01
TagId                   : 0
WaitHint                : 0
...

此命令列出远程 Server01 计算机上满足以下条件的所有服务:

  • 服务的启动类型为“自动”。
  • 服务已停止。

示例 5:获取与本地计算机上条件匹配的侦听器配置

PS C:\> Get-WSManInstance -ResourceURI winrm/config/listener -SelectorSet @{Address="*";Transport="http"}
cfg                   : https://schemas.microsoft.com/wbem/wsman/1/config/listener
xsi                   : http://www.w3.org/2001/XMLSchema-instance
lang                  : en-US
Address               : *
Transport             : HTTP
Port                  : 80
Hostname              :
Enabled               : true
URLPrefix             : wsman
CertificateThumbprint :
ListeningOn           : {100.0.0.1, 123.123.123.123, ::1, 2001:4898:0:fff:0:5efe:123.123.123.123...}

此命令列出本地计算机上与选择器集中的条件相符的侦听器的 WS-Management 侦听器配置。

示例 6:获取与远程计算机上条件匹配的侦听器配置

PS C:\> Get-WSManInstance -ResourceURI winrm/config/listener -SelectorSet @{Address="*";Transport="http"} -ComputerName "Server01"
cfg                   : https://schemas.microsoft.com/wbem/wsman/1/config/listener
xsi                   : http://www.w3.org/2001/XMLSchema-instance
lang                  : en-US
Address               : *
Transport             : HTTP
Port                  : 80
Hostname              :
Enabled               : true
URLPrefix             : wsman
CertificateThumbprint :
ListeningOn           : {100.0.0.1, 123.123.123.124, ::1, 2001:4898:0:fff:0:5efe:123.123.123.124...}

此命令列出 server01 远程计算机上与选择器集中的条件相符的侦听器的 WS-Management 侦听器配置。

示例 7:获取与指定实例相关的关联实例

PS C:\> Get-WSManInstance -Enumerate -Dialect Association -Filter "{Object=win32_service?name=winrm}" -ResourceURI wmicimv2/*
xsi                       : http://www.w3.org/2001/XMLSchema-instance
p                         : https://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_ComputerSystem
cim                       : http://schemas.dmtf.org/wbem/wscim/1/common
type                      : p:Win32_ComputerSystem_Type
lang                      : en-US
AdminPasswordStatus       : 1
AutomaticManagedPagefile  : true
AutomaticResetBootOption  : true
AutomaticResetCapability  : true
BootOptionOnLimit         : BootOptionOnLimit
BootOptionOnWatchDog      : BootOptionOnWatchDog
BootROMSupported          : true
BootupState               : Normal boot
Caption                   : SERVER01
ChassisBootupState        : 3
CreationClassName         : Win32_ComputerSystem
CurrentTimeZone           : -480
DaylightInEffect          : false
Description               : AT/AT COMPATIBLE
DNSHostName               : server01
Domain                    : site01.corp.fabrikam.com
DomainRole                : 1
EnableDaylightSavingsTime : true
FrontPanelResetStatus     : 2
InfraredSupported         : false
InstallDate               : InstallDate
KeyboardPasswordStatus    : 2
LastLoadInfo              : LastLoadInfo
Manufacturer              : Dell Inc.
Model                     : OptiPlex 745
Name                      : SERVER01
NameFormat                : NameFormat
NetworkServerModeEnabled  : true
NumberOfLogicalProcessors : 2
NumberOfProcessors        : 1
OEMStringArray            : www.dell.com
PartOfDomain              : true
PauseAfterReset           : -1
PCSystemType              : 5
PowerManagementSupported  : PowerManagementSupported
PowerOnPasswordStatus     : 1
PowerState                : 0
PowerSupplyState          : 3
PrimaryOwnerContact       : PrimaryOwnerContact
PrimaryOwnerName          : testuser01
ResetCapability           : 1
ResetCount                : -1
ResetLimit                : -1
Roles                     : {LM_Workstation, LM_Server, SQLServer, NT}
Status                    : OK
SystemStartupDelay        : SystemStartupDelay
SystemStartupSetting      : SystemStartupSetting
SystemType                : X86-based PC
ThermalState              : 3
TotalPhysicalMemory       : 3217760256
UserName                  : FABRIKAM\testuser01
WakeUpType                : 6
Workgroup                 : Workgroup
xsi                     : http://www.w3.org/2001/XMLSchema-instance
p                       : https://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_Service
cim                     : http://schemas.dmtf.org/wbem/wscim/1/common
type                    : p:Win32_Service_Type
lang                    : en-US
AcceptPause             : false
AcceptStop              : false
Caption                 : Remote Procedure Call (RPC)
CheckPoint              : 0
CreationClassName       : Win32_Service
Description             : Serves as the endpoint mapper and COM Service Control Manager. If this service is stopped
or disabled, programs using COM or Remote Procedure Call (RPC) services will not function
properly.
DesktopInteract         : false
DisplayName             : Remote Procedure Call (RPC)
ErrorControl            : Normal
ExitCode                : 0
InstallDate             : InstallDate
Name                    : RpcSs
PathName                : C:\Windows\system32\svchost.exe -k rpcss
ProcessId               : 1100
ServiceSpecificExitCode : 0
ServiceType             : Share Process
Started                 : true
StartMode               : Auto
StartName               : NT AUTHORITY\NetworkService
State                   : Running
Status                  : OK
SystemCreationClassName : Win32_ComputerSystem
SystemName              : SERVER01
TagId                   : 0
WaitHint                : 0

xsi                     : http://www.w3.org/2001/XMLSchema-instance
p                       : https://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_SystemDriver
cim                     : http://schemas.dmtf.org/wbem/wscim/1/common
type                    : p:Win32_SystemDriver_Type
lang                    : en-US
AcceptPause             : false
AcceptStop              : true
Caption                 : HTTP
CreationClassName       : Win32_SystemDriver
Description             : HTTP
DesktopInteract         : false
DisplayName             : HTTP
ErrorControl            : Normal
ExitCode                : 0
InstallDate             : InstallDate
Name                    : HTTP
PathName                : C:\Windows\system32\drivers\HTTP.sys
ServiceSpecificExitCode : 0
ServiceType             : Kernel Driver
Started                 : true
StartMode               : Manual
StartName               :
State                   : Running
Status                  : OK
SystemCreationClassName : Win32_ComputerSystem
SystemName              : SERVER01
TagId                   : 0

此命令获取与指定实例 (winrm) 相关的关联的实例。

你必须将筛选器用引号括起来,如该示例中所示。

示例 8:获取与指定实例相关的关联实例

PS C:\> Get-WSManInstance -Enumerate -Dialect Association -Associations -Filter "{Object=win32_service?name=winrm}" -ResourceURI wmicimv2/*

此命令获取与指定实例 (winrm) 相关的关联实例。 由于 Dialect 值为 association 且使用 Associations 参数,因此此命令返回关联实例,而不是关联的实例。

你必须将筛选器用引号括起来,如该示例中所示。

参数

-ApplicationName

指定连接中的应用程序名称。 ApplicationName 参数的默认值为 WSMAN。 远程终结点的完整标识符采用以下格式:

<transport>://<server>:<port>/<ApplicationName>

例如: http://server01:8080/WSMAN

托管该会话的 Internet Information Services (IIS) 将带有此终结点的请求转发到指定的应用程序。 默认设置 WSMAN 适用于大多数使用情况。 当许多计算机与运行 PowerShell 的计算机建立远程连接时,可以使用此参数。 在这种情况下,为了提高效率,IIS 主机 WS-Management。

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Associations

指示此 cmdlet 获取关联实例,而不是关联的实例。 仅当 Dialect 参数的值为 Association 时,才能使用此参数。

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Authentication

指定服务器上要使用的身份验证机制。 此参数的可接受值为:

  • 基本。 Basic 是一种将用户名和密码以明文形式发送到服务器或代理的方案。
  • 默认。 使用由 WS-Management 协议实现的身份验证方法。 这是默认值。
  • 摘要。 Digest 是一种质询响应方案,该方案将服务器指定的数据字符串用于质询。
  • Kerberos。 客户端计算机和服务器通过使用 Kerberos 证书相互进行身份验证。
  • Negotiate。 Negotiate 是一种质询响应方案,该方案与服务器或代理协商以确定要用于身份验证的方案。 例如,此参数值允许协商以确定是使用 Kerberos 协议还是 NTLM。
  • CredSSP。 使用凭据安全支持提供程序 (CredSSP) 身份验证,可允许用户委派凭据。 此选项专门用于这样的命令:在一台远程计算机上运行,但从其他远程计算机收集数据或在其他远程计算机上运行其他命令。

注意:CredSSP 将用户凭据从本地计算机委派给远程计算机。 此做法增加了远程操作的安全风险。 如果远程计算机的安全受到威胁,则在向该计算机传递凭据时,可使用这些凭据来控制网络会话。

Type:AuthenticationMechanism
Aliases:auth, am
Accepted values:None, Default, Digest, Negotiate, Basic, Kerberos, ClientCertificate, Credssp
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-BasePropertiesOnly

指示此 cmdlet 仅枚举属于 由 ResourceURI 参数指定的基类的一部分的属性。 如果指定了 Shallow 参数,则此参数无效。

Type:SwitchParameter
Aliases:UBPO, Base
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-CertificateThumbprint

指定有权执行此操作的用户帐户的数字公钥证书 (X509)。 输入证书的证书指纹。

在基于客户端证书的身份验证中使用证书。 证书只能映射到本地用户帐户,而不适用于域帐户。

若要获取证书指纹,请使用 PowerShell Cert: 驱动器中的 Get-Item 或 Get-ChildItem 命令。

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ComputerName

指定要对其运行管理操作的计算机。 该值可以是完全限定的域名、NetBIOS 名称或 IP 地址。 使用本地计算机名称、localhost 或点 (.) 指定本地计算机。 默认值为本地计算机。 当远程计算机与用户位于不同的域时,必须使用完全限定的域名。 可以通过管道将此参数的值传递给 cmdle。

Type:String
Aliases:CN
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ConnectionURI

指定连接终结点。 此字符串的格式如下:

<Transport>://<Server>:<Port>/<ApplicationName>

以下字符串是此参数的格式正确的值:

http://Server01:8080/WSMAN

URI 必须完全限定。

Type:Uri
Aliases:CURI, CU
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Credential

指定有权执行此操作的用户帐户。 默认为当前用户。 键入用户名,例如 User01、Domain01\User01 或 User@Domain.com。 或者,输入 PSCredential 对象,例如 Get-Credential cmdlet 返回的对象。 键入用户名时,此 cmdlet 会提示输入密码。

Type:PSCredential
Aliases:cred, c
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Dialect

指定要在筛选器谓词中使用的方言。 这可以是远程服务支持的任何方言。 以下别名可用于方言 URI:

  • WQL https://schemas.microsoft.com/wbem/wsman/1/WQL
  • 选择 https://schemas.microsoft.com/wbem/wsman/1/wsman/SelectorFilter
  • 协会 http://schemas.dmtf.org/wbem/wsman/1/cimbinding/associationFilter
Type:Uri
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Enumerate

指示此 cmdlet 返回管理资源的所有实例。

Type:SwitchParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-Filter

指定枚举的筛选器表达式。 如果指定此参数,则还必须指定 Dialect

此参数的有效值取决于方言中指定的 方言。 例如,如果 Dialect 为 WQL,则 Filter 参数必须包含一个字符串,并且字符串必须包含有效的 WQL 查询,如以下查询:

"Select * from Win32_Service where State != Running"

如果 Dialect 为 Association, 则 Filter 必须包含一个字符串,并且字符串必须包含有效的筛选器,例如以下筛选器:

-filter:Object=EPR\[;AssociationClassName=AssocClassName\]\[;ResultClassName=ClassName\]\[;Role=RefPropertyName\]\[;ResultRole=RefPropertyName\]}

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Fragment

指定实例内要针对指定操作更新或检索的部分。 例如,若要获取后台处理程序服务的状态,请指定以下内容:

-Fragment Status

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-OptionSet

将一组开关指定到某个服务以修改或优化请求的性质。 这些开关类似于命令行 shell 中使用的开关,因为它们也特定于服务。 可以指定任何数量的选项。

以下示例演示为 a、b 和 c 参数传递值 1、2 和 3 的语法:

-OptionSet @{a=1;b=2;c=3}

Type:Hashtable
Aliases:OS
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Port

指定要在客户端连接到 WinRM 服务时使用的端口。 当传输为 HTTP 时,默认端口为 80。 当传输为 HTTPS 时,默认端口为 443。

使用 HTTPS 作为传输时, ComputerName 参数的值必须与服务器证书公用名 (CN) 相匹配。 但是,如果将 SkipCNCheck 参数指定为 SessionOption 参数的一部分,则服务器的证书公用名无需与服务器的主机名匹配。 SkipCNCheck 参数应仅用于受信任的计算机。

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ResourceURI

指定资源类或实例的 URI。 URI 标识计算机上的特定类型的资源,例如磁盘或进程。

URI 由资源的前缀和路径组成。 例如:

https://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_LogicalDisk

http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_NumericSensor

Type:Uri
Aliases:RURI
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-ReturnType

指定要返回的数据类型。 此参数的可接受值为:

  • Object
  • EPR
  • ObjectAndEPR

默认值为 Object。

如果指定 Object 或未指定此参数,则此 cmdlet 仅返回 对象。 如果指定终结点引用 (EPR) 则此 cmdlet 仅返回对象的终结点引用。 终结点引用包含有关实例的资源 URI 和选择器的信息。 如果指定 ObjectAndEPR,则此 cmdlet 将返回对象及其关联的终结点引用。

Type:String
Aliases:RT
Accepted values:object, epr, objectandepr
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-SelectorSet

指定一组用于选择特定管理资源实例的值对。 如果有多个资源实例存在,则使用 SelectorSet 参数。 SelectorSet 参数的值必须是哈希表。

以下示例显示如何为此参数输入值:

-SelectorSet @{Name="WinRM";ID="yyy"}

Type:Hashtable
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-SessionOption

为 WS-Management 会话指定扩展选项。 输入使用 New-WSManSessionOption cmdlet 创建的 SessionOption 对象。 有关可用选项的详细信息,请键入 Get-Help New-WSManSessionOption

Type:SessionOption
Aliases:SO
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Shallow

指示此 cmdlet 仅返回在资源 URI 中指定的基类的实例。 如果不指定此参数,此 cmdlet 将返回在 URI 及其所有派生类中指定的基类的实例。

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-UseSSL

指定使用安全套接字层 (SSL) 协议来建立与远程计算机的连接。 默认情况下,不使用 SSL。

WS-Management 对通过网络传输的所有 Windows PowerShell 内容进行加密。 UseSSL 参数允许指定 HTTPS(而不是 HTTP)的额外保护。 如果 SSL 在用于连接的端口上不可用,并且指定了此参数,则命令将失败。

Type:SwitchParameter
Aliases:SSL
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

输入

None

此命令不接受任何输入。

输出

XmlElement

此 cmdlet 生成 XMLElement 对象。