Skip to content

Instantly share code, notes, and snippets.

@gtalton
Created November 4, 2015 14:30
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save gtalton/fb1d48d533e0814ce4db to your computer and use it in GitHub Desktop.
Save gtalton/fb1d48d533e0814ce4db to your computer and use it in GitHub Desktop.
vSphere PowerCLI 6.0 script to dump guest attributes and notes from multiple vCenters
$serverCSV = import-csv ".\vCenterServers.csv"
$outputFilename = “.\exported-attributes-value.csv”
Remove-Item $outputFilename
foreach($serverData in $serverCSV) {
Connect-VIserver -server $serverData.server -User $serverData.username -Password $serverData.passwd
$valueList =@()
get-vm | % {
for($i = 0; $i -lt $_.CustomFields.Count; $i ++ ){
if ( $_.CustomFields.Values[$i] ) {
$row = “” | Select vCenter, VMname, FieldKey, FieldValue
$row.vCenter = $serverData.server
$row.VMname = $_.Name
$row.FieldKey = $_.CustomFields.Keys[$i]
$row.FieldValue = $_.CustomFields.Values[$i]
$valueList += $row
}
}
$curVMGuest = Get-VMGuest $_
if ( $curVMGuest.VM.Notes ) {
$row1 = “” | Select vCenter, VMname, FieldKey, FieldValue
$row1.vCenter = $serverData.server
$row1.VMname = $_.Name
$row1.FieldKey = "Notes"
$row1.FieldValue = $curVMGuest.VM.Notes
$valueList += $row1
}
}
$valueList | Export-Csv -Append $outputFilename -NoTypeInformation
Disconnect-VIServer –server “*” -Confirm:$False
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment