Get-VMSnapshot

Gets the checkpoints associated with a virtual machine or checkpoint.

Syntax

Get-VMSnapshot
   [-VMName] <String[]>
   [-CimSession <CimSession[]>]
   [-ComputerName <String[]>]
   [-Credential <PSCredential[]>]
   [[-Name] <String>]
   [-SnapshotType <SnapshotType>]
   [<CommonParameters>]
Get-VMSnapshot
   [-VM] <VirtualMachine[]>
   [[-Name] <String>]
   [-SnapshotType <SnapshotType>]
   [<CommonParameters>]
Get-VMSnapshot
   [-CimSession <CimSession[]>]
   [-ComputerName <String[]>]
   [-Credential <PSCredential[]>]
   [-Id] <Guid>
   [<CommonParameters>]
Get-VMSnapshot
   [[-Name] <String>]
   -ParentOf <VirtualMachineBase>
   [-SnapshotType <SnapshotType>]
   [<CommonParameters>]
Get-VMSnapshot
   [[-Name] <String>]
   -ChildOf <VMSnapshot>
   [-SnapshotType <SnapshotType>]
   [<CommonParameters>]

Description

The Get-VMSnapshot cmdlet gets the checkpoints associated with a virtual machine or checkpoint.

Note: In Windows Server 2012 R2, virtual machine snapshots were renamed to virtual machine checkpoints. For clarity, this document will refer to virtual machine snapshots as checkpoints.

Examples

Example 1

PS C:\> Get-VMSnapshot -VMName TestVM

Gets all checkpoints of virtual machine TestVM.

Example 2

PS C:\> Get-VM -Name TestVM | Get-VMSnapshot -SnapshotType Standard

Gets all standard checkpoints of virtual machine TestVM.

Example 3

PS C:\> $snapshot = Get-VMSnapshot -Name 'Before applying updates' -VMName TestVM


PS C:\> Get-VMSnapshot -ParentOf $snapshot

Gets the immediate parent of checkpoint Before applying updates of virtual machine TestVM.

Example 4

PS C:\> $snapshot = Get-VMSnapshot -Name 'Before applying updates' -VMName TestVM


PS C:\> Get-VMSnapshot -ChildOf $snapshot

Gets the immediate child checkpoints of checkpoint Before applying updates of virtual machine TestVM.

Required Parameters

-ChildOf

Specifies the checkpoint whose child checkpoints are to be retrieved. This retrieves immediate children only.

Type: VMSnapshot
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-Id

Specifies the unique identifier of the virtual machine whose checkpoints are to be retrieved.

Type: Guid
Position: 0
Default value: None
Accept pipeline input: True (ByPropertyName, ByValue)
Accept wildcard characters: False
-ParentOf

Specifies the checkpoint whose immediate parent checkpoint is to be retrieved.

Type: VirtualMachineBase
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-VM

Specifies the virtual machine whose checkpoints are to be retrieved.

Type: VirtualMachine[]
Position: 0
Default value: None
Accept pipeline input: True (ByValue)
Accept wildcard characters: False
-VMName

Specifies the name of the virtual machine whose checkpoints are to be retrieved.

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

Optional 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
Accept pipeline input: False
Accept wildcard characters: False
-ComputerName

Specifies one or more Hyper-V hosts on which checkpoints 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
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
Accept pipeline input: False
Accept wildcard characters: False
-Name

Specifies the name of the checkpoint to be retrieved.

Type: String
Position: 1
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-SnapshotType

Specifies the type of the checkpoints to be retrieved. Allowed values are Standard , Recovery , Planned , Missing , Replica , AppConsistentReplica , and SyncedReplica .

Type: SnapshotType
Aliases: VMRecoveryCheckpoint
Parameter Sets: Standard, Recovery, Planned, Missing, Replica, AppConsistentReplica, SyncedReplica
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False

Outputs

Microsoft.HyperV.PowerShell.Snapshot