Remove-VMSnapshot
Deletes a virtual machine checkpoint.
Syntax
Remove-VMSnapshot
[-VMName] <String[]>
[-CimSession <CimSession[]>]
[-ComputerName <String[]>]
[-Credential <PSCredential[]>]
[[-Name] <String[]>]
[-IncludeAllChildSnapshots]
[-AsJob]
[-Passthru]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Remove-VMSnapshot
[-VM] <VirtualMachine[]>
[[-Name] <String[]>]
[-IncludeAllChildSnapshots]
[-AsJob]
[-Passthru]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Remove-VMSnapshot
[-VMSnapshot] <VMSnapshot[]>
[-IncludeAllChildSnapshots]
[-AsJob]
[-Passthru]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
The Remove-VMSnapshot cmdlet deletes a virtual machine 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-VM TestVM | Remove-VMSnapshot -Name Experiment*
Deletes all checkpoints of virtual machine TestVM whose names starts with Experiment.
Example 2
PS C:\> Get-VMSnapshot -VMName TestVM | Where-Object {$_.CreationTime -lt (Get-Date).AddDays(-90) } | Remove-VMSnapshot
Deletes all checkpoints of virtual machine TestVM older than 90 days.
Parameters
-AsJob
Runs the cmdlet as a background job.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-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 on which this cmdlet deletes a checkpoint. 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 |
-Confirm
Prompts you for confirmation before running the cmdlet.
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
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 |
-IncludeAllChildSnapshots
Specifies that the checkpoint's children are to be deleted along with the checkpoint.
Type: | SwitchParameter |
Aliases: | IncludeAllChildCheckpoints |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Name
Specifies the name of the checkpoint to be deleted.
Type: | String[] |
Position: | 1 |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Passthru
Indicates that this cmdlet returns a Microsoft.HyperV.PowerShell.VirtualMachine object that represents the checkpoint that it deletes.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-VM
Specifies the virtual machine of which the checkpoint is to be deleted.
Type: | VirtualMachine[] |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-VMName
Specifies the name of the virtual machine of which the checkpoint is to be deleted.
Type: | String[] |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-VMSnapshot
Specifies the checkpoint to be deleted.
Type: | VMSnapshot[] |
Aliases: | VMCheckpoint |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-WhatIf
Shows what would happen if the cmdlet runs. The cmdlet is not run.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Outputs
None
Default
Microsoft.HyperV.PowerShell.VirtualMachine
If -PassThru is specified.