PowerCLI: Change Virtual Machines Guest OS Names

From VI-Toolkit
Revision as of 18:11, 5 June 2021 by Wila (talk | contribs) (Adding the code itself (just in case))
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

PowerCLI: Change Virtual Machines Guest OS Names

author: Rawlinson

Description

The script displayed here queries the VM name at the host level and will use that to set the name of the operating system within the guest OS. The example code here is used for windows guests.

Code

$VMs = Get-VM | Where {$_.PowerState -eq "PoweredOn"} 

Foreach ($VM in $VMS){
      $VCName = $VM.Name
      $WinName = $VM.Guest.Hostname
      If ($WinName -ne $VCName) {
            Write-Host "$VCName is currently $WinName... renaming"
            $renamecomputer = "wmic path win32_computersystem where ""Name='%computername%'"" CALL rename name='$VCName'"
            Invoke-VMScript -VM $VM -GuestUser "Administrator" -GuestPassword "vmware" -ScriptType Bat -ScriptText $renamecomputer
            restart-vmguest -VM $VM -Confirm:$false
      }
}

Usage

Save as a script and run it.

Location