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 获取所有信息
Get-WSManInstance -ResourceURI wmicimv2/win32_service -SelectorSet @{name="winrm"} -ComputerName "Server01"
此命令将返回 Windows Management Instrumentation (WMI) 公开的有关 server01 远程计算机上的 WinRM 服务的全部信息。
示例 2:获取后台处理程序服务的状态
Get-WSManInstance -ResourceURI wmicimv2/win32_service -SelectorSet @{name="spooler"} -Fragment Status -ComputerName "Server01"
此命令仅返回 server01 远程计算机上的后台处理程序的状态。
示例 3:获取所有服务的终结点引用
Get-WSManInstance -Enumerate -ResourceURI wmicimv2/win32_service -ReturnType EPR
此命令将返回对应于本地计算机上的所有服务的终结点引用。
示例 4:获取满足指定条件的服务
Get-WSManInstance -Enumerate -ResourceURI wmicimv2/* -Filter "select * from win32_service where StartMode = 'Auto' and State = 'Stopped'" -ComputerName "Server01"
此命令列出 Server01 远程计算机上符合以下条件的所有服务:
- 该服务的启动类型是“自动”。
- 服务已停止。
示例 5:获取符合本地计算机上的条件的侦听器配置
Get-WSManInstance -ResourceURI winrm/config/listener -SelectorSet @{Address="*";Transport="http"}
此命令列出本地计算机上与选择器集中的条件相符的侦听器的 WS-Management 侦听器配置。
示例 6:获取符合远程计算机上的条件的侦听器配置
Get-WSManInstance -ResourceURI winrm/config/listener -SelectorSet @{Address="*";Transport="http"} -ComputerName "Server01"
此命令列出 server01 远程计算机上与选择器集中的条件相符的侦听器的 WS-Management 侦听器配置。
示例 7:获取与指定实例相关的关联实例
Get-WSManInstance -Enumerate -Dialect Association -Filter "{Object=win32_service?name=winrm}" -ResourceURI wmicimv2/*
此命令获取与指定实例 (winrm) 相关的关联的实例。
你必须将筛选器用引号括起来,如该示例中所示。
示例 8:获取与指定实例相关的关联实例
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 以提高效率。
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-Associations
指示此 cmdlet 获取关联实例(而不是关联的实例)。 仅在将 Dialect 参数具有“Association”的值时,才可以使用此参数。
类型: | SwitchParameter |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-Authentication
指定服务器上要使用的身份验证机制。 此参数的可接受值为:
Basic
- Basic 是一种将用户名和密码以明文形式发送到服务器或代理的方案。Default
- 使用由 WS-Management 协议实现的身份验证方法。 这是默认情况。Digest
- Digest 是一种质询响应方案,该方案将服务器指定的数据字符串用于质询。Kerberos
- 客户端计算机和服务器通过使用 Kerberos 证书相互进行身份验证。Negotiate
- Negotiate 是一种质询响应方案,该方案与服务器或代理进行协商来确定要用于身份验证的方案。 例如,此参数值允许协商以确定是使用 Kerberos 协议还是 NTLM。CredSSP
- 使用凭据安全支持提供程序 (CredSSP) 身份验证,它允许用户委派凭据。 此选项专门用于这样的命令:在一台远程计算机上运行,但从其他远程计算机收集数据或在其他远程计算机上运行其他命令。
注意
CredSSP 将用户的凭据从本地计算机委派给远程计算机。 此做法增加了远程操作的安全风险。 如果远程计算机的安全受到威胁,则在向该计算机传递凭据时,可使用这些凭据来控制网络会话。
类型: | AuthenticationMechanism |
别名: | auth, am |
接受的值: | None, Default, Digest, Negotiate, Basic, Kerberos, ClientCertificate, Credssp |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-BasePropertiesOnly
指示此 cmdlet 仅枚举属于由资源 ResourceURI 参数指定的基类的属性。 如果指定了 Shallow 参数,则此参数无效。
类型: | SwitchParameter |
别名: | UBPO, Base |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-CertificateThumbprint
指定有权执行此操作的用户帐户的数字公钥证书 (X509)。 输入证书的证书指纹。
在基于客户端证书的身份验证中使用证书。 证书只能映射到本地用户帐户,而不适用于域帐户。
若要获取证书指纹,请使用 PowerShell 证书:驱动器中的 Get-Item
或 Get-ChildItem
命令。
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-ComputerName
指定要对其运行管理操作的计算机。 该值可以是完全限定的域名、NetBIOS 名称或 IP 地址。 可使用本地计算机名称、localhost 或点 (.
) 指定本地计算机。 默认值为本地计算机。 当远程计算机与用户位于不同的域时,必须使用完全限定的域名。 可以通过管道将此参数的值传递给 cmdle。
类型: | String |
别名: | CN |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-ConnectionURI
指定连接终结点。 此字符串的格式如下:
<Transport>://<Server>:<Port>/<ApplicationName>
以下字符串是此参数的格式正确的值:
http://Server01:8080/WSMAN
URI 必须完全限定。
类型: | Uri |
别名: | CURI, CU |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-Credential
指定有权执行此操作的用户帐户。 默认为当前用户。 请键入用户名,例如“User01”、“Domain01\User01”或 User@Domain.com。 或者,输入 PSCredential 对象,例如 Get-Credential
cmdlet 返回的对象。 键入用户名时,此 cmdlet 会提示输入密码。
类型: | PSCredential |
别名: | cred, c |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | True |
接受通配符: | False |
-Dialect
指定要在筛选器谓词中使用的方言。 这可以是远程服务支持的任何方言。 以下别名可用于方言 URI:
WQL
-http://schemas.microsoft.com/wbem/wsman/1/WQL
- 选择器 -
http://schemas.microsoft.com/wbem/wsman/1/wsman/SelectorFilter
- 关联 -
http://schemas.dmtf.org/wbem/wsman/1/cimbinding/associationFilter
类型: | Uri |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-Enumerate
指示此 cmdlet 返回管理资源的所有实例。
类型: | SwitchParameter |
Position: | Named |
默认值: | None |
必需: | True |
接受管道输入: | False |
接受通配符: | False |
-Filter
指定枚举的筛选器表达式。 如果指定此参数,则还必须指定 Dialect。
此参数的有效值取决于在 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\]}
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-Fragment
指定实例内要针对指定操作更新或检索的部分。 例如,若要获取后台处理程序服务的状态,请指定以下:
-Fragment Status
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-OptionSet
将一组开关指定到某个服务以修改或优化请求的性质。 这些开关类似于命令行 shell 中使用的开关,因为它们也特定于服务。 可以指定任何数量的选项。
以下示例演示为 a、b 和 c 参数传递值 1、2 和 3 的语法:
-OptionSet @{a=1;b=2;c=3}
类型: | Hashtable |
别名: | OS |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | True |
接受通配符: | False |
-Port
指定要在客户端连接到 WinRM 服务时使用的端口。 当传输为 HTTP 时,默认端口为 80。 当传输为 HTTPS 时,默认端口为 443。
使用 HTTPS 作为传输协议时,ComputerName 参数的值必须与服务器的证书公用名 (CN) 匹配。 但是,如果将 SkipCNCheck 参数指定为 SessionOption 参数的一部分,则服务器的证书公用名无需与服务器的主机名匹配。 SkipCNCheck 参数应仅用于受信任的计算机。
类型: | Int32 |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-ResourceURI
指定资源类或实例的 URI。 URI 标识计算机上特定类型的资源,例如磁盘或进程。
URI 由资源的前缀和路径组成。 例如:
http://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_LogicalDisk
http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_NumericSensor
类型: | Uri |
别名: | RURI |
Position: | 0 |
默认值: | None |
必需: | True |
接受管道输入: | True |
接受通配符: | False |
-ReturnType
指定要返回的数据类型。 此参数的可接受值为:
Object
EPR
ObjectAndEPR
默认值为 Object
。
如果指定 Object
或未指定此参数,则此 cmdlet 仅返回对象。 如果指定终结点引用 (EPR),则此 cmdlet 仅返回对象的终结点引用。
终结点引用包含有关实例的资源 URI 和选择器的信息。
如果指定 ObjectAndEPR
,则此 cmdlet 同时返回对象及其相关联的终结点引用。
类型: | String |
别名: | RT |
接受的值: | object, epr, objectandepr |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-SelectorSet
指定一组用于选择特定管理资源实例的值对。 如果相应资源存在多个实例,则使用 SelectorSet 参数。 SelectorSet 参数的值必须为哈希表。
以下示例显示如何为此参数输入值:
-SelectorSet @{Name="WinRM";ID="yyy"}
类型: | Hashtable |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-SessionOption
为 WS-Management 会话指定扩展选项。
输入使用 New-WSManSessionOption cmdlet 创建的 SessionOption 对象。
有关可用选项的详细信息,请键入 Get-Help New-WSManSessionOption
。
类型: | SessionOption |
别名: | SO |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-Shallow
指明此 cmdlet 仅返回资源 URI 中指定的基类的实例。 如果未指定此参数,则此 cmdlet 返回在 URI 及其所有派生类中指定的基类的实例。
类型: | SwitchParameter |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-UseSSL
指定使用安全套接字层 (SSL) 协议来建立与远程计算机的连接。 默认情况下,不使用 SSL。
WS-Management 对通过网络传输的所有 Windows PowerShell 内容进行加密。 可以使用 UseSSL 参数指定 HTTPS(而非 HTTP)的额外保护措施。 如果 SSL 在用于连接的端口上不可用,并且指定了此参数,则命令将失败。
类型: | SwitchParameter |
别名: | SSL |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
输入
None
无法通过管道将对象传递给此 cmdlet。
输出
此 cmdlet 返回 XMLElement 对象。