Files
PowerCLI-Example-Scripts/Scripts/vCenterSnapshot.ps1
Lukas Winn 3b3197b04a Create vCenterSnapshot.ps1
Script to retrieve snapshot information for all VM's in a given vCenter
2017-09-21 16:46:41 +01:00

41 lines
1.3 KiB
PowerShell

<#
.NOTES
Script name: vCenterSnapshot.ps1
Created on: 20/09/2017
Author: Lukas Winn, @lukaswinn
Dependencies: Password is set to VMware123 in my test environment but this can be changed.
.DESCRIPTION
Script to retrieve snapshot information for all VM's in a given vCenter
#>
Write-Host "`nGet VM Snapshot Information!"
Write-Host "Copyright 2017 Lukas Winn / @lukaswinn"
Write-Host "Version 1.0" "`n"
$vCenter = Read-Host -prompt 'Enter FQDN / IP address of vCenter'
if ($vCenter) {
$vcUser = Read-Host -prompt 'Username'
Write-Host 'vCenter:' $vCenter ''
# Connect to vCenter with $vCenter variable value
Connect-VIServer -Server $vCenter -User $vcUser -Password VMware123
Write-Host "`nConnected to vCenter: " $vCenter
Write-Host 'Retrieving snapshot information...'
Write-Progress -Activity 'Working...'
# Get VM snapshot information and output in table format
$getSnap = Get-VM | Get-Snapshot | sort SizeGB -descending | Select VM, Name, Created, @{Label="Size";Expression={"{0:N2} GB" -f ($_.SizeGB)}}, Id
$getSnap | Format-Table | Out-Default
# Close connection to active vCenter
Disconnect-VIServer $vCenter -Confirm:$false
Write-Host 'Connection closed to' $vCenter
}
else {
Write-Warning "Error: No data entered for vCenter!"
}