PowerCLI: Change Virtual Machines Guest OS Names: Difference between revisions
Jump to navigation
Jump to search
m Updated link to point to a copy at web.archive.org as the site is no longer there. |
m Adding the code itself (just in case) |
||
Line 3: | Line 3: | ||
==== Description ==== | ==== 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. | 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 ==== | ==== Usage ==== |
Latest revision as of 17:11, 5 June 2021
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.