Vmware虚拟机实现自动开机启动本机关机挂起虚拟机脚本命令

Vmware 实现自动开机启动指定虚拟机,新建文件:123.bat

“C:\Program Files (x86)\VMware\VMware Workstation\vmware.exe” -x “E:\Windows 7\Windows 7.vmx”
REM “C:\Program Files (x86)\VMware\VMware Workstation\vmware.exe” vm安装路径
REM “E:\Windows 7\Windows 7.vmx” 需要启动的虚拟机

打开 gpedit.msc把 123.bat 放到登录中, 注意,这里是用户配置.

系统关闭自动关闭虚拟机,新建234.bat

@echo off
echo 正在关闭虚拟机…
“C:\Program Files (x86)\VMware\VMware Workstation\vmrun.exe” -T ws stop “E:\Windows 7\Windows 7.vmx” nogui
echo 虚拟机已关闭
exit

把234.bat 放到关机中,注意,这里是计算机配置

系统关机挂起虚拟机,新建456.bat,放到关机中启动项

@echo off
echo 正在挂起虚拟机…
“C:\Program Files (x86)\VMware\VMware Workstation\vmrun.exe” -T ws suspend “E:\Windows 7\Windows 7.vmx”
echo 虚拟机已挂起
exit

如果想运行脚本挂起虚拟机,再关闭系统:

@echo off
echo 正在挂起虚拟机…
“C:\Program Files (x86)\VMware\VMware Workstation\vmrun.exe” -T ws suspend “E:\Windows 7\Windows 7.vmx”
echo 虚拟机已挂起
echo 正在关闭计算机…
shutdown /s /t 0
exit

挂起多个虚拟机脚本:

@echo off
setlocal

rem 虚拟机路径列表
set “vm_list=C:\VirtualMachines\VM1\VM1.vmx D:\VirtualMachines\VM2\VM2.vmx”

for %i in (%!v(MISSING)m_list%!)(MISSING) do (
echo 正在挂起虚拟机: %i
“C:\Program Files (x86)\VMware\VMware Workstation\vmrun.exe” -T ws suspend “%i”
echo 虚拟机 %i 已挂起
)

endlocal
exit

理论支持所有Vmware版本,具体自己测试!