Get-VMHardDiskDrive

Gets the virtual hard disk drives attached to one or more virtual machines.

Syntax

Get-VMHardDiskDrive
   [-CimSession <CimSession[]>]
   [-ComputerName <String[]>]
   [-Credential <PSCredential[]>]
   [-VMName] <String[]>
   [-ControllerLocation <Int32>]
   [-ControllerNumber <Int32>]
   [-ControllerType <ControllerType>]
   [<CommonParameters>]
Get-VMHardDiskDrive
   [-VM] <VirtualMachine[]>
   [-ControllerLocation <Int32>]
   [-ControllerNumber <Int32>]
   [-ControllerType <ControllerType>]
   [<CommonParameters>]
Get-VMHardDiskDrive
   [-VMSnapshot] <VMSnapshot>
   [-ControllerLocation <Int32>]
   [-ControllerNumber <Int32>]
   [-ControllerType <ControllerType>]
   [<CommonParameters>]
Get-VMHardDiskDrive
   [-ControllerLocation <Int32>]
   [-VMDriveController] <VMDriveController[]>
   [<CommonParameters>]

Description

The Get-VMHardDiskDrive cmdlet gets the virtual hard disk drives attached to one or more virtual machines.

Examples

Example 1

PS C:\> Get-VMHardDiskDrive -VMName TestVM

Gets the virtual hard drives from virtual machine TestVM.

Example 2

PS C:\> Get-VM -Name TestVM | Get-VMHardDiskDrive -ControllerType IDE -ControllerNumber 1

Gets the virtual hard drives from IDE controller 1 of virtual machine TestVM.

Example 3

PS C:\> Get-VMIdeController -VMName TestVM -ControllerNumber 1 -ComputerName Development | Get-VMHardDiskDrive

Gets the virtual hard drives from IDE controller 1 of virtual machine TestVM located on Hyper-V host Development.

Example 4

PS C:\> Get-VMSnapshot -VMName Test -Name 'Before applying updates' | Get-VMHardDiskDrive

Gets the virtual hard drives from snapshot Before applying updates of virtual machine TestVM.

Parameters

-CimSession

Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session object, such as the output of a New-CimSession or Get-CimSession cmdlet. The default is the current session on the local computer.

Type:CimSession[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ComputerName

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.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ControllerLocation

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.

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ControllerNumber

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.

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ControllerType

Specifies the type of the controller from which the virtual hard disk drives are to be retrieved. Allowed values are Floppy, IDE, and SCSI.

Type:ControllerType
Accepted values:IDE, SCSI
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Credential

Specifies one or more user accounts that have permission to perform this action. The default is the current user.

Type:PSCredential[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-VM

Specifies the virtual machine from which the virtual hard disk drives are to be retrieved.

Type:VirtualMachine[]
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-VMDriveController

Specifies the drive controller from which the virtual hard disk drives are to be retrieved.

Type:VMDriveController[]
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-VMName

Specifies the name of the virtual machine from which the virtual hard disks drives are to be retrieved.

Type:String[]
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-VMSnapshot

Specifies the snapshot from which the virtual hard disk drives are to be retrieved.

Type:VMSnapshot
Aliases:VMCheckpoint
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

Inputs

Microsoft.HyperV.PowerShell.ControllerType

Microsoft.HyperV.PowerShell.VMSnapshot

Microsoft.HyperV.PowerShell.VMDriveController[]

Microsoft.HyperV.PowerShell.VirtualMachine[]

Outputs

Microsoft.HyperV.PowerShell.HardDiskDrive