Skip to content

VirtuallyThatGuy

Anything VMware , PowerCLI, PowerShell, Automation and some Windows

Menu
  • Home
  • PowerCLI
  • VMware
  • Automation
  • Windows
  • About
Menu

Script: How to get VM with Tag Assignment and export results to csv using PowerCLI or Powershell

Posted on January 3, 2022December 6, 2022 by VirtuallyThatGuy

This is a quick blog post on retrieving VM tag data from vcenter and exporting result to csv

## VMs with Tags and Used Disk Space
Get-VM | Get-TagAssignment |
   where {$_.Tag -like 'tag-1*'} |
  Select @{N = 'VM'; E = {$_.Entity.Name}}, @{N = 'UsedSpace'; E = {$_.Entity.UsedSpaceGB}} |
   Export-CSV C:\temp\vms-tag.csv -NoTypeInformation

## Below works aswell 

Get-VM | Get-TagAssignment |
where{$_.Tag -like 'tag-1*'} |
Select @{N='VM';E={$_.Entity.Name}} |
Export-CSV C:\temp\vms-tag-1.csv -NoTypeInformation

## VMs with no tag 

$VMsWithNoTag = Get-VM | ?{(Get-TagAssignment $_) -eq $null}


## Bonus short script
## Get VM Snapshot Information for all Snapshots and send that information to
C:\temp\AllSnapshots.txt

Write-Output "VMWare Snapshot Report for $(get-date -f MM-dd-yyyy)" | Out-File $Log -Append

$output = @()
foreach ($vm in Get-VM) {
   $tags = ((Get-TagAssignment -Entity $vm | select -ExpandProperty Tag).Name -join ", ")
   foreach ($snapshot in $vm | Get-Snapshot | Where-Object { $_.Created -lt (Get-Date).AddDays(-3) }) {
       $obj = [PSCustomObject]@{VM = $vm.Name; Name = $snapshot.Name; Created = $snapshot.Created; SizeGB = $snapshot.SizeGB; Tags = $tags}
       $output += $obj
   }
}
$output | Format-List | Out-File $Log -Append

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Recent Posts

  • vROps: Management Pack Troubleshooting
  • Windows AD {Active Directory} (PowerShell) samples
  • Migrate VMs Between vCentres Using Powershell or PowerCLI
  • Set VM Tools to Update Automatically on VM Reboot using powershell
  • Windows Administrator Must Have Powershell Commands

Recent Comments

  • VirtuallyThatGuy on ESXi 8.x, 7.x, 6.x Service sfcbd-watchdog Not Running / Fails to Start – VirtuallyThatGuy
  • VirtuallyThatGuy on VMware ESXi CLI Cheat Sheet
  • Johan on ESXi 8.x, 7.x, 6.x Service sfcbd-watchdog Not Running / Fails to Start – VirtuallyThatGuy
  • Allen on VMware ESXi CLI Cheat Sheet
  • edward on Cluster Capacity Report for VMs, Cluster, Hosts, vCenter – Using PowerCLI – VirtuallyThatGuy

Archives

  • March 2023
  • February 2023
  • January 2023
  • December 2022
  • November 2022
  • October 2022
  • September 2022
  • August 2022
  • July 2022
  • June 2022
  • May 2022
  • April 2022
  • March 2022
  • February 2022
  • January 2022
  • December 2021
  • November 2021
  • October 2021
  • September 2021
  • August 2021
  • July 2021
  • June 2021
  • May 2021
  • April 2021
  • March 2021
  • February 2021
  • January 2021
  • December 2020
  • November 2020
  • October 2020
  • September 2020
  • May 2020
  • April 2020
  • March 2020
  • February 2020
  • January 2020
  • December 2019
  • November 2019
  • October 2019
  • September 2019
  • August 2019
  • July 2019
  • May 2019
  • April 2019
  • March 2019
  • February 2019
  • January 2019
  • December 2018
  • November 2018
  • October 2018
  • July 2018
  • June 2018
  • May 2018
  • April 2018
  • March 2018
  • February 2018
  • January 2018
  • December 2017

Categories

  • Automation
  • PowerCLI
  • VMware
  • Windows
© 2023 VirtuallyThatGuy | Powered by Superbs Personal Blog theme