-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathGet-VMSnapshotList.ps1
More file actions
35 lines (28 loc) · 1.03 KB
/
Copy pathGet-VMSnapshotList.ps1
File metadata and controls
35 lines (28 loc) · 1.03 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
function Get-VMSnapshotList {
<#
.SYNOPSIS
Displays basic data about all VM snapshots.
.DESCRIPTION
Displays select useful data about all VM snapshots.
.INPUTS
This function does not take pipelined inputs.
.OUTPUTS
This function does not output any objects.
#>
Get-VM | Get-Snapshot | Select-Object Id, Name, VM, Created, SizeGB | ForEach-Object {
$decodedName = $_.Name
$decodedName = [System.Web.HttpUtility]::UrlDecode($decodedName)
$decodedName = [System.Web.HttpUtility]::UrlDecode($decodedName)
# Ensure the DateTime is marked as UTC
$utcTime = [DateTime]::SpecifyKind($_.Created, [DateTimeKind]::Utc)
# Convert from UTC to local time
$localTime = $utcTime.ToLocalTime()
[PSCustomObject]@{
Id = ($_.Id -split '-')[2]
Name = $decodedName
VM = $_.VM
Created = $_.Created
SizeGB = $_.SizeGB
}
}
}