管理 VMM 对象
适用于: System Center 2012 R2 Virtual Machine Manager,System Center 2012 - Virtual Machine Manager
Windows PowerShell 基于面向对象的编程和 Microsoft.NET Framework 类。 对象包含以下类型的数据︰ 对象的类型、 其方法和其属性。
VMM 对象
在处理时 System Center 2012 – Virtual Machine Manager (VMM) 对象,可以使用它们的属性和方法来操作数据并执行特定操作。 属性 包含有关对象状态的信息。 方法 是您可以对对象所表示的项执行的操作。 方法可以返回数据。 有关使用 Windows PowerShell 对象的详细信息,请参阅 about_Objects。
属性
您可以通过使用对象的可用属性 Get-member cmdlet 并设置 MemberType
为"property"参数。 例如,若要获取的逻辑网络的属性,获取该逻辑网络对象,然后使用管道运算符 (|) 将对象发送到 Get-member。
PS C:\> Get-SCLogicalNetwork -Name "LogicalNetwork01" | Get-Member -MemberType property
TypeName: Microsoft.SystemCenter.VirtualMachineManager.LogicalNetwork
Name MemberType Definition
---- ---------- ----------
Description Property System.String Description {get;}
ID Property System.Guid ID {get;}
IsFullyCached Property System.Boolean IsFullyCached {get;}
IsViewOnly Property System.Boolean IsViewOnly {get;}
MarkedForDeletion Property System.Boolean MarkedForDeletion {get;}
Name Property System.String Name {get;}
ObjectType Property Microsoft.VirtualManager.Utils.CarmineObjectType ObjectType {get;}
ServerConnection Property Microsoft.SystemCenter.VirtualMachineManager.Remoting.ServerConnection Server...
您可以通过使用点法来获取属性的值。 获取对该对象,例如包含的对象的变量的引用,或键入可获取该对象的命令。 然后,键入句点 (.) 后, 跟属性名称。 下面的示例获取为逻辑网络对象的 Name 属性的值。
PS C:\> $LogNet01 = Get-SCLogicalNetwork -Name "LogicalNetwork01"
PS C:\> $LogNet01.Name
LogicalNetwork01
有关 Windows PowerShell 属性的详细信息,请参阅 about_Properties
方法
可以通过使用获取的对象的可用方法 Get-member cmdlet 并设置 MemberType
"方法"的参数。 例如,若要获取的逻辑网络的方法,获取该逻辑网络对象,然后使用管道运算符 (|) 将对象发送至 Get-member。
PS C:\> Get-SCLogicalNetwork -Name "LogicalNetwork01" | Get-Member -MemberType method
TypeName: Microsoft.SystemCenter.VirtualMachineManager.LogicalNetwork
Name MemberType Definition
---- ---------- ----------
CompareTo Method int CompareTo(System.Object obj)
Equals Method bool Equals(System.Object obj)
GetHashCode Method int GetHashCode()
GetType Method type GetType()
OnAddedToCache Method System.Void OnAddedToCache()
ToString Method string ToString()
若要调用一种方法,键入对该对象,例如包含的对象的变量的引用,然后指定方法名称,用句点分隔的对象引用和方法。 若要将参数传递给该方法,请用直接在方法名称后面的括号括起来参数。 一组空的括号指示该方法需要任何参数;但是,参数的空集仍需要。 下面的示例使用 GetType 方法返回一个逻辑网络的基类型。
PS C:\> $LogNet01.GetType
()
IsPublic IsSerial Name BaseType
-------- -------- ---- --------
True False LogicalNetwork Microsoft.SystemCenter.VirtualMachineManager.Cl...
有关 Windows PowerShell 方法的详细信息,请参阅 about_Methods
对象同步
VMM 使其对象同步。 也就是说,如果您创建两个变量,然后更改任一变量中存储的对象的属性,VMM 将在同步这两个变量中的对象属性。 下面的示例演示如何获取同步逻辑网络对象存储在两个变量的名称︰
# Get LogicalNetwork01 and store it in a variable.
PS C:\> $LogNet01 = Get-SCLogicalNetwork -Name "LogicalNetwork01"
# Take a look at the name of the logical network stored in $LogNet01.
PS C:\> $LogNet01.Name
LogicalNetwork01
# Get LogicalNetwork01 and store it in a second variable.
PS C:\> $LogNet02 = Get-SCLogicalNetwork -Name "LogicalNetwork01"
# Take a look at the name of the logical network stored in $LogNet02.
PS C:\> $LogNet02.Name
LogicalNetwork01
# Change the name of the logical network object stored in $LogNet02
PS C:\> Set-SCLogicalNetwork -LogicalNetwork $LogNet02 -Name "Backend"
# Take a look at the name of the logical network stored in $LogNet02.
PS C:\> $LogNet02.Name
Backend
# Now take a look at the name of the logical network stored in $LogNet01.
# Note how the name property has been synchronized with the name change
# made to the object stored in $LogNet02.
PS C:\> $LogNet01.Name
Backend