$vmName = "vm01" $vm = Get-VM -Name $vmName -ErrorAction Stop $vm |Stop-VM -Force -ErrorAction Stop while($vm.Heartbeat -like "Ok*") { Start-Sleep -Seconds 1 } Write-Host "$($vm.Name) is Off. Start VM..." $vm = Get-VM -Name $vmName -ErrorAction Stop $vm |Start-VM -ErrorAction Stop while($vm.Heartbeat -notlike "Ok*") { Start-Sleep -Seconds 1 } Write-Host "$($vm.Name) is Rebooted."