Windows怎么使用vmrun命令行脚本自动化控制VMware虚拟机

云墨同学_8943

云墨同学_8943

2026-11-13

610人浏览

原创

必须绕过Workstation图形界面干扰,直接用vmrun.exe静默启动、关闭、挂起虚拟机;需确认其路径并配置系统环境变量,编写含nogui参数的bat脚本,通过计划任务以最高权限延迟执行,方可实现稳定自动化控制。

windows怎么使用vmrun命令行脚本自动化控制vmware虚拟机

在Windows系统中用vmrun命令行脚本自动化控制VMware虚拟机,必须绕过Workstation图形界面的干扰,直接调用底层工具启动、关闭、挂起指定虚拟机,否则脚本执行后只会打开空主窗口而不会加载任何虚拟机。

确认vmrun.exe位置并配置环境变量

先在资源管理器中打开VMware Workstation默认安装路径:【C:\Program Files (x86)\VMware\VMware Workstation】,检查目录下是否存在vmrun.exe文件;若不存在,请重新安装或修复Workstation 16.1.2及以上版本。

右键“此电脑”→属性→高级系统设置→环境变量→在“系统变量”中找到Path→编辑→新建→粘贴刚才确认的完整路径(不含vmrun.exe本身),例如:【C:\Program Files (x86)\VMware\VMware Workstation】。

打开新cmd窗口,输入vmrun回车;若显示帮助信息,则环境变量生效;若报“不是内部或外部命令”,说明路径未保存或含中文/特殊字符,需重设。

编写可静默启动虚拟机的bat脚本

新建文本文档,输入以下内容(注意引号为英文半角,路径必须真实存在):

@echo off
vmrun -T ws start "D:\VMs\Ubuntu22\Ubuntu22.vmx" nogui
timeout /t 3 /nobreak >nul
vmrun list

将D:\VMs\Ubuntu22\Ubuntu22.vmx替换为你自己的.vmx文件绝对路径;【nogui参数不可省略,否则会弹出GUI窗口阻塞后台运行】;timeout用于等待虚拟机初步加载完成,避免list命令查不到刚启动的实例。

保存后将.txt后缀改为.bat;双击运行该bat文件,观察命令行窗口是否快速闪退、虚拟机是否在Workstation界面中显示为“正在运行”状态。

Windows 开机自启并隐藏到系统托盘
Windows 开机自启并隐藏到系统托盘

让 Windows 桌面程序在开机时静默自启并隐藏到系统托盘。特别适用于 Flutter、Electron 等无视 VBS/ProcessStartInfo 窗口样式、难以隐藏的顽固应用。提供「VBS 启动器 + Python ctypes/Win32 API」的隐藏窗口方案,可稳定把窗口收进托盘且不闪控制台。

下载

通过计划任务实现开机自动启动

第一步:按Win+R输入taskschd.msc打开任务计划程序;
第二步:右侧点击“创建任务”,不要选“基本任务”;
第三步:“常规”选项卡中,勾选【不管用户是否登录都要运行】和【使用最高权限运行】;
第四步:“触发器”选项卡→新建→开始任务选择“登录时”→勾选“延迟任务时间”设为15秒(避开系统启动争抢);
第五步:“操作”选项卡→新建→程序或脚本填入cmd.exe,添加参数填入/c "D:\Scripts\vm-start.bat"(路径需为你实际bat文件位置)。

保存时系统会要求输入当前账户密码;若提示“操作被拒绝”,说明账户无本地管理员权限,需先以管理员身份运行任务计划程序再重试。

用一条命令查看所有已启动的虚拟机

在任意cmd窗口中直接运行:

vmrun list

该命令会输出当前由vmrun启动且仍在运行的所有虚拟机.vmx路径;如果返回为空但Workstation界面显示有运行中虚拟机,说明那些是手动点开的,不受脚本控制——只有用vmrun start启动的才计入list结果。

安全关闭虚拟机的两种可靠方式

方法一:软关机(推荐)
vmrun -T ws stop "D:\VMs\Ubuntu22\Ubuntu22.vmx" soft
该命令向客户机操作系统发送标准关机信号,前提是虚拟机内已安装VMware Tools;若未安装,会超时失败。

方法二:强制断电(仅应急)
vmrun -T ws stop "D:\VMs\Ubuntu22\Ubuntu22.vmx" hard
【hard操作不可逆,可能损坏虚拟磁盘文件,请严格避免在生产环境使用】

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
windows查看端口占用情况
windows查看端口占用情况

Windows端口可以认为是计算机与外界通讯交流的出入口。逻辑意义上的端口一般是指TCP/IP协议中的端口,端口号的范围从0到65535,比如用于浏览网页服务的80端口,用于FTP服务的21端口等等。怎么查看windows端口占用情况呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

2023.07.26

3479

3

查看端口占用情况windows
查看端口占用情况windows

端口占用是指与端口关联的软件占用端口而使得其他应用程序无法使用这些端口,端口占用问题是计算机系统编程领域的一个常见问题,端口占用的根本原因可能是操作系统的一些错误,服务器也可能会出现端口占用问题。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

2023.07.27

3018

6

windows照片无法显示
windows照片无法显示

当我们尝试打开一张图片时,可能会出现一个错误提示,提示说"Windows照片查看器无法显示此图片,因为计算机上的可用内存不足",本专题为大家提供windows照片无法显示相关的文章,帮助大家解决该问题。

2023.08.01

1548

3

windows查看端口被占用的情况
windows查看端口被占用的情况

windows查看端口被占用的情况的方法:1、使用Windows自带的资源监视器;2、使用命令提示符查看端口信息;3、使用任务管理器查看占用端口的进程。本专题为大家提供windows查看端口被占用的情况的相关的文章、下载、课程内容,供大家免费下载体验。

2023.08.02

2739

5

windows无法访问共享电脑
windows无法访问共享电脑

在现代社会中,共享电脑是办公室和家庭的重要组成部分。然而,有时我们可能会遇到Windows无法访问共享电脑的问题。这个问题可能会导致数据无法共享,影响工作和生活的正常进行。php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

2023.08.08

3370

4

windows自动更新
windows自动更新

Windows操作系统的自动更新功能可以确保系统及时获取最新的补丁和安全更新,以提高系统的稳定性和安全性。然而,有时候我们可能希望暂时或永久地关闭Windows的自动更新功能。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

2023.08.10

1737

3

windows boot manager
windows boot manager

windows boot manager无法开机的解决方法:1、系统文件损坏,使用Windows安装光盘或USB启动盘进入恢复环境,选择修复计算机,然后选择自动修复;2、引导顺序错误,进入恢复环境,选择命令提示符,输入命令"bootrec /fixboot"和"bootrec /fixmbr",然后重新启动计算机;3、硬件问题,使用硬盘检测工具进行扫描和修复;4、重装操作系统。本专题还提供其他解决

2023.08.28

2537

4

windows锁屏快捷键
windows锁屏快捷键

windows锁屏快捷键是Windows键+L、Ctrl+Alt+Del、Windows键+D、Windows键+P和Windows键+R。本专题为大家提供windows相关的文章、下载、课程内容,供大家免费下载体验。

2023.08.30

5487

5

Window.setInterval()方法
Window.setInterval()方法

Window.setInterval() 方法的基本语法是“window.setInterval(function, delay)”,function是要重复执行的函数或代码块,delay是每次执行之间的时间间隔,以毫秒为单位。本专题为大家提供Window.setInterval()相关的文章、下载、课程内容,供大家免费下载体验。

2023.08.31

855

3

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
HBuilderX Windows 安装手册
HBuilderX Windows 安装手册

共0课时 | 0人学习

phpEnv手册
phpEnv手册

共0课时 | 0人学习

好课诞生记
好课诞生记

共20课时 | 7.2万人学习