Powershell:使用get-member返回对象属性

我试图浏览一个sql服务器对象中的所有项目。 我正在使用SQL服务器群集,并使用此代码(从另一个页面中解除)来获取2个特定项目的值。

[System.Reflection.Assembly]::LoadWithPartialName('Microsoft.SqlServer.Smo') | out-null; $srv = New-Object 'Microsoft.SqlServer.Management.Smo.Server' $cluster_name; $properties = $srv.Properties $owner_node = $properties.Item('ComputerNamePhysicalNetBIOS').Value; $is_clustered = $properties.Item('IsClustered').Value 

这导致我想知道:我将如何浏览此对象中的其他项目? 当我尝试“$ properties | get-member”时,它只是返回:

  TypeName: Microsoft.SqlServer.Management.Smo.Property Name MemberType Definition ---- ---------- ---------- CompareTo Method int CompareTo(System.Object obj) Equals Method bool Equals(System.Object o) GetHashCode Method int GetHashCode() GetType Method type GetType() ToString Method string ToString() Dirty Property System.Boolean Dirty {get;} Expensive Property System.Boolean Expensive {get;} IsNull Property System.Boolean IsNull {get;} Name Property System.String Name {get;} Readable Property System.Boolean Readable {get;} Retrieved Property System.Boolean Retrieved {get;} Type Property System.Type Type {get;} Value Property System.Object Value {get;set;} Writable Property System.Boolean Writable {get;} 

当我尝试“$ properties.item | get-member”时返回相同的结果。

如果我理解正确,你想知道你可以使用类似的代码$properties.Item('ComputerNamePhysicalNetBIOS').Value来访问其他属性$properties.Item('ComputerNamePhysicalNetBIOS').Value 如果是这种情况,你可以使用这些属性的列表

 $properties | select name