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

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

我正在尝试浏览 SQL Server 对象中的所有项目。我正在使用 SQL Server 群集,并使用此代码(从另一个页面提取)从 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”时返回相同的结果。

答案1

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

$properties | select name

相关内容