Skip to content

VMware Tools Version Report Script

In this PowerShell script, we automate the process of retrieving VMware Tools version information for virtual machines (VMs) managed by VMware vCenter Server. The script establishes a connection to the VMware environment, retrieves a list of VMs, and then iterates through each VM to fetch its VMware Tools version and exports to a CSV file.


Ensure you have the VMware PowerCLI module installed:

Install-Module -Name VMware.PowerCLI -Scope CurrentUser

PowerShell Script:

# Define vCenter Server details
$vCenterServer = ""
$username = "your_username"
$password = "your_password"

# Connect to VMware vCenter Server
Connect-VIServer -Server $vCenterServer -User $username -Password $password

# Get a list of VMs
$VMs = Get-VM

# Create an array to store VM information
$VMInfo = @()

# Iterate through each VM to retrieve VMware Tools version
foreach ($VM in $VMs) {
    $ToolsVersion = Get-VMGuest -VM $VM | Select-Object -ExpandProperty ToolsVersion
    $VMInfo += [PSCustomObject]@{
        VMName = $VM.Name
        ToolsVersion = $ToolsVersion

# Export VM information to CSV
$VMInfo | Export-Csv -Path "VMware_Tools_Info.csv" -NoTypeInformation

# Disconnect from VMware vCenter Server
Disconnect-VIServer -Server $vCenterServer -Confirm:$false

Replace "", "your_username", and "your_password" with your actual vCenter Server address, username, and password respectively.

This script will create a CSV file named VMware_Tools_Info.csv in the current directory containing the VM names and their respective VMware Tools versions.

By automating this process, administrators can save time and ensure consistency in managing VMware Tools versions, contributing to the efficiency and reliability of their virtual infrastructure.

Recommended Reading: Automating VMware Tools Installation with PowerShell

Published inPowerCLIPowerShellVMware
© 2024 - Powered by Coffee & Magic