Get-VMHardDiskDrive
Get-VMHardDiskDrive
Gets the virtual hard disk drives attached to one or more virtual machines.
Syntax
Parameter Set: VMDriveController
Get-VMHardDiskDrive [-VMDriveController] <VMDriveController[]> [-ControllerLocation <Int32> ] [ <CommonParameters>]
Parameter Set: VMName
Get-VMHardDiskDrive [-VMName] <String[]> [-ComputerName <String[]> ] [-ControllerLocation <Int32> ] [-ControllerNumber <Int32> ] [-ControllerType <ControllerType> ] [ <CommonParameters>]
Parameter Set: VMObject
Get-VMHardDiskDrive [-VM] <VirtualMachine[]> [-ControllerLocation <Int32> ] [-ControllerNumber <Int32> ] [-ControllerType <ControllerType> ] [ <CommonParameters>]
Parameter Set: VMSnapshot
Get-VMHardDiskDrive [-VMSnapshot] <VMSnapshot> [-ControllerLocation <Int32> ] [-ControllerNumber <Int32> ] [-ControllerType <ControllerType> ] [ <CommonParameters>]
Detailed Description
The Get-VMHardDiskDrive cmdlet gets the virtual hard disk drives attached to one or more virtual machines.
Parameters
-ComputerName<String[]>
Specifies one or more Hyper-V hosts from which the virtual hard disk drives are to be retrieved. NetBIOS names, IP addresses, and fully-qualified domain names are allowable. The default is the local computer — use “localhost” or a dot (“.”) to specify the local computer explicitly.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
. |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
-ControllerLocation<Int32>
Specifies the number of the location on the controller at which the virtual hard disk drives are to be retrieved. If not specified, the number of the first available location on the controller is used.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
-ControllerNumber<Int32>
Specifies the number of the controller at which the virtual hard disk drives are to be retrieved. If not specified, the first controller on which the specified ControllerLocation is available is used.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
-ControllerType<ControllerType>
Specifies the type of the controller from which the virtual hard disk drives are to be retrieved. Allowed values are IDE and SCSI.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
-VM<VirtualMachine[]>
Specifies the virtual machine from which the virtual hard disk drives are to be retrieved.
Aliases |
none |
Required? |
true |
Position? |
1 |
Default Value |
none |
Accept Pipeline Input? |
True (ByValue) |
Accept Wildcard Characters? |
false |
-VMDriveController<VMDriveController[]>
Specifies the drive controller from which the virtual hard disk drives are to be retreived.
Aliases |
none |
Required? |
true |
Position? |
1 |
Default Value |
none |
Accept Pipeline Input? |
True (ByValue) |
Accept Wildcard Characters? |
false |
-VMName<String[]>
Specifies the name of the virtual machine from which the virtual hard disks drives are to be retrieved.
Aliases |
none |
Required? |
true |
Position? |
1 |
Default Value |
none |
Accept Pipeline Input? |
True (ByValue) |
Accept Wildcard Characters? |
false |
-VMSnapshot<VMSnapshot>
Specifies the snapshot from which the virtual hard disk drives are to be retrieved.
Aliases |
none |
Required? |
true |
Position? |
1 |
Default Value |
none |
Accept Pipeline Input? |
True (ByValue) |
Accept Wildcard Characters? |
false |
<CommonParameters>
This cmdlet supports the common parameters: -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer, and -OutVariable. For more information, see about_CommonParameters (https://go.microsoft.com/fwlink/p/?LinkID=113216).
Inputs
The input type is the type of the objects that you can pipe to the cmdlet.
- Microsoft.HyperV.PowerShell.ControllerType
- Microsoft.HyperV.PowerShell.VMSnapshot
- Microsoft.HyperV.PowerShell.VMDriveController[]
- Microsoft.HyperV.PowerShell.VirtualMachine[]
Outputs
The output type is the type of the objects that the cmdlet emits.
- Microsoft.Virtualization.Powershell.HardDiskDrive
Examples
Example 1
Gets the virtual hard drives from virtual machine TestVM.
PS C:\> Get-VMHardDiskDrive –VMName TestVM
Example 2
Gets the virtual hard drives from IDE controller 1 of virtual machine TestVM.
PS C:\> Get-VM –Name TestVM | Get-VMHardDiskDrive –ControllerType IDE –ControllerNumber 1
Example 3
Gets the virtual hard drives from IDE controller 1 of virtual machine TestVM located on Hyper-V host Development.
PS C:\> Get-VMIdeController –VMName TestVM –ControllerNumber 1 –ComputerName Development | Get-VMHardDiskDrive
Example 4
Gets the virtual hard drives from snapshot Before applying updates of virtual machine TestVM.
PS C:\> Get-VMSnapshot –VMName Test –Name ‘Before applying updates’ | Get-VMHardDrive