cmd虚拟机常用命令有哪些?怎么用虚拟机指令操作?

Telnet命令:老设备和不支持SSH时的备选

有些老旧的网络设备虚拟机,或者临时调试环境,没装SSH只有Telnet,cmd里telnet默认是关闭的,需要你先去控制面板的“启用或关闭Windows功能”里勾选Telnet客户端。

启用后,连接方式很简单:

cmd命令视频教程
加载中
cmd命令视频教程
telnet 虚拟机IP 端口

比如连一台IP为192.168.1.50、端口23的虚拟机:

telnet 192.168.1.50 23

Telnet和SSH最大的区别是数据传输不加密,登录密码以明文方式发送,在公网环境下千万不要用,只有在隔离的内网或者实验室环境才考虑。

mstsc命令:远程桌面连接Windows虚拟机

如果你要操作的是Windows虚拟机,图形界面操作更顺手,cmd里输入mstsc回车就能打开远程桌面连接窗口,但更高效的方法是在命令里直接带上IP:

mstsc /v:192.168.1.200

这条命令会立刻弹出远程桌面窗口,并尝试连接192.168.1.200这台虚拟机,如果要指定分辨率、全屏等参数,还可以用:

mstsc /v:192.168.1.200 /w:1440 /h:900

/w和/h分别指定窗口宽度和高度,实际体验中,mstsc比SSH更适合不懂命令行的新手,而且Windows虚拟机自带远程桌面服务,基本开箱即用。

cmd管理本地虚拟机的命令:VMware和Hyper-V的命令行工具

VMware Workstation的vmrun命令

VMware用户经常遇到一个问题:虚拟机启动太慢,能不能用cmd直接控制?其实VMware自带了一个命令行工具vmrun,但默认不加入环境变量,你需要先找到它的路径,在多数版本里,vmrun位于:

C:Program Files (x86)VMwareVMware Workstationvmrun.exe

使用方法如下,启动虚拟机:

"C:Program Files (x86)VMwareVMware Workstationvmrun.exe" start "D:虚拟机Ubuntu.vmx"

关闭虚拟机(客户机内系统正常关机):

vmrun stop "D:虚拟机Ubuntu.vmx" soft

强制断电:

vmrun stop "D:虚拟机Ubuntu.vmx" hard

挂起虚拟机:

vmrun suspend "D:虚拟机Ubuntu.vmx"

如果你觉得每次输全路径太麻烦,可以在系统环境变量里将vmrun所在的目录加入Path,之后就能直接使用vmrun命令了,这个思路和Windows下配置Java环境变量是一样的原理。

Hyper-V的PowerShell命令

Windows自带的Hyper-V虚拟化平台,用cmd能管一部分,但很多操作其实要依赖PowerShell,不过你可以直接在cmd里启动powershell执行命令,比如查看虚拟机列表:

powershell -Command "Get-VM"

启动指定虚拟机:

powershell -Command "Start-VM -Name 'UbuntuServer'"

关闭虚拟机:

powershell -Command "Stop-VM -Name 'UbuntuServer'"

创建检查点(快照):

powershell -Command "Checkpoint-VM -Name 'UbuntuServer' -SnapshotName 'BeforeUpdate'"

cmd虚拟机常用命令有哪些?怎么用虚拟机指令操作?

这里有个实际场景:你在公司用Hyper-V跑着一台内部测试机,每天下班前想自动创建快照,用cmd的计划任务调用上述PowerShell命令,就能实现无人值守备份,比起在Hyper-V管理器里手动点鼠标,效率提升非常明显。

VirtualBox的VBoxManage命令

用VirtualBox的用户也别急,它的命令是VBoxManage,同样需要先找到安装目录,典型路径为:

C:Program FilesOracleVirtualBoxVBoxManage.exe

启动名为“CentOS8”的虚拟机:

VBoxManage startvm "CentOS8"

注意这个命令在VirtualBox 6.1以后,默认是以分离模式启动,后台运行不占用cmd窗口,关闭虚拟机:

VBoxManage controlvm "CentOS8" acpipowerbutton

强制关机:

VBoxManage controlvm "CentOS8" poweroff

查看所有虚拟机状态:

VBoxManage list runningvms

cmd虚拟机网络诊断指令:ping、tracert、nslookup怎么配合使用

虚拟机网络不通,是新手最头疼的问题,在cmd里,有一套固定的排查流程,我把它拆解开讲。

ping命令:先确认虚拟机是否能响应

ping 192.168.1.100

如果通了,会返回类似“来自192.168.1.100的回复: 字节=32 时间=1ms TTL=64”的信息,如果超时,先检查虚拟机网卡是不是处于桥接或NAT模式,然后再看防火墙是否拦截了ICMP请求,很多Linux虚拟机默认禁ping,这时你可以临时关闭防火墙测试:

iptables -F

或者Windows虚拟机里执行:

netsh advfirewall set allprofiles state off

但要记住,这只是测试手段,测完记得开回防火墙。

tracert命令:定位哪一跳断了

ping通了但访问慢,或者ping不通但虚拟机确实活着,用tracert追踪路径:

tracert 192.168.1.100

输出会显示从你本地到虚拟机经过的每一个路由器IP和延迟,如果某一跳出现“请求超时”,而下一跳又能通,那通常是中间路由器屏蔽了探测包,不一定是故障,如果一路到最后一跳都超时,大概率是虚拟机防火墙或网卡问题。

nslookup命令:排查域名解析故障

虚拟机里访问外网域名失败,先看DNS解析正不正常,在cmd里输入:

nslookup www.baidu.com

正常会返回域名对应的IP,如果提示“找不到主机”,换一个公共DNS测试:

nslookup www.baidu.com 223.5.5.5

这个命令能帮你快速区分是DNS问题还是网络连通问题,实际运维中,相当一部分“虚拟机无法上网”的案例,最后发现都是虚拟机内DNS被配置成了无效地址,而不是物理网络故障。

cmd批量操作虚拟机的进阶技巧:for循环和批处理

cmd虚拟机常用命令有哪些?怎么用虚拟机指令操作?

当你需要同时操作多台虚拟机时,一条一条敲命令太累,cmd支持for循环,结合ssh或者Hyper-V命令,能实现批量操作,比如批量ping多台虚拟机:

for /L %i in (1,1,10) do ping 192.168.1.%i -n 1 >> result.txt

这条命令会依次ping 192.168.1.1到192.168.1.10,并把结果写入result.txt文件,注意,在cmd窗口里直接输入用单百分号%,如果你把这段代码写入.bat批处理文件,需要改成双百分号%%。

再举个例子,批量启动Hyper-V虚拟机,先创建一个虚拟机列表文件vms.txt,每行一个虚拟机名称,然后写一个批处理脚本:

@echo off
for /f %%i in (vms.txt) do (
    powershell -Command "Start-VM -Name '%%i'"
)

执行后,cmd会逐行读取vms.txt,依次启动列出的虚拟机,这个脚本在实验室管理多台测试机时非常实用,配合计划任务还能实现定时批量开机。

用命令导出虚拟机列表保存到文件

管理多台虚拟机时,先把所有虚拟机名称和状态导出来,方便存档,Hyper-V环境下:

powershell -Command "Get-VM | Export-Csv -Path D:vminfo.csv"

VirtualBox环境下:

VBoxManage list vms > D:vms.txt

VMware环境下:

vmrun list > D:vmware_running.txt

这样生成的文件可以直接用Excel打开,或者配合批处理做后续操作。

cmd连接虚拟机时常见的五个坑及解决办法

连接超时,但虚拟机明明开机了

先确认虚拟机IP地址,在虚拟机内部执行ip addr(Linux)或ipconfig(Windows),查看实际IP,NAT模式下虚拟机的IP和主机不在同一网段是正常的,但host-only模式下如果IP配错,就会连接超时,解决办法是改用桥接模式,让虚拟机直接获取局域网IP。

SSH提示Permission denied

密码明明输入对了,却提示认证失败,多数情况是root用户默认禁止SSH登录,编辑虚拟机的/etc/ssh/sshd_config文件,找到PermitRootLogin,把值改成yes,然后重启SSH服务:

systemctl restart sshd

telnet命令不是内部或外部命令

前面提到了,Windows默认没装Telnet客户端,去控制面板程序启用或关闭Windows功能,勾选Telnet客户端,点确定后等待安装完成,重新打开cmd即可。

cmd无法运行vmrun

提示“vmrun不是内部或外部命令”,是因为没配环境变量,按Win+R输入sysdm.cpl打开系统属性,点击环境变量,在Path中添加VMware安装目录,保存后重新打开cmd。

mstsc连不上但网络通

虚拟机内Windows远程桌面服务没开启,右键此电脑属性远程桌面,选择“允许远程连接到此计算机”,同时确保防火墙允许远程桌面端口3389通过。

常用命令速查表

cmd虚拟机常用命令有哪些?怎么用虚拟机指令操作?

场景 命令 示例
SSH连接 ssh 用户@IP ssh root@192.168.1.100
Telnet连接 telnet IP 端口 telnet 192.168.1.50 23
远程桌面 mstsc /v:IP mstsc /v:192.168.1.200
启动VMware虚拟机 vmrun start 路径 vmrun start D:Ubuntu.vmx
查看Hyper-V虚拟机 powershell Get-VM powershell -Command “Get-VM”
启动VirtualBox虚拟机 VBoxManage startvm 名称 VBoxManage startvm “CentOS8”
测试连通性 ping IP ping 192.168.1.100
追踪路由 tracert IP tracert 192.168.1.100
解析域名 nslookup 域名 nslookup www.baidu.com
批量ping for /L %i in (1,1,10) do ping for /L %i in (1,1,10) do ping 192.168.1.%i

cmd虚拟机指令的适用场景与选择建议

我建议你根据实际需求选命令,如果只是临时连一下虚拟机敲两条命令,直接用ssh或telnet最省事;如果要给虚拟机做快照、调整硬件配置,用VMware的vmrun或Hyper-V的PowerShell更专业;如果你手头有多台虚拟机想一次性同时启动,批处理循环是效率最高的方案。

记住一个核心思路:cmd本身只是个外壳,真正干活的是虚拟机平台提供的命令行工具,以及SSH、远程桌面这类连接协议,把上面的命令练熟,你的Windows电脑就能像控制台一样调度所有虚拟机。

常见问题解答

怎么知道虚拟机当前有没有开机?

用对应的平台命令查询,VMware执行vmrun list会列出所有正在运行的虚拟机;Hyper-V执行powershell -Command "Get-VM | Where-Object {$_.State -eq 'Running'}";VirtualBox执行VBoxManage list runningvms,如果一条命令都记不住,最简单的办法是ping一下虚拟机IP,能通说明至少网络层面是活的。

cmd和PowerShell操作虚拟机有什么区别?

cmd偏传统批处理,适合直接调用外部工具如vmrun、VBoxManage以及ssh指令,脚本简单直观,PowerShell能直接调用Hyper-V管理模块,返回对象化数据,便于筛选、排序、导出,实际使用中,如果你的虚拟化平台是Hyper-V,建议直接用PowerShell;如果是VMware或VirtualBox,两者的差别不大,看个人习惯。

有没有不需要安装任何客户端就能连接虚拟机的方法?

有,win10和win11自带的OpenSSH客户端就能直接连虚拟机,前提是虚拟机里装好了SSH服务端,这个服务大多数Linux发行版默认已安装,Windows虚拟机也可以安装OpenSSH Server,然后你在cmd里执行ssh 用户名@虚拟机IP,体验和Linux完全一致,如果虚拟机是图形界面的Windows系统,mstsc远程桌面也是系统自带的,无需额外安装软件。

首发原创文章,作者:王坚‌,如若转载,请注明出处:https://idctop.com/article/615830.html

赞 (0)
Java虚拟机在单核CPU上如何优化性能与资源,有哪些技巧?
上一篇 2026年9月1日 22:59
虚拟机怎么加载?加载流程、步骤及原理详解
下一篇 2026年9月1日 22:59

相关推荐

  • 互联网云端数据库是什么?云端数据库有哪些优势

    互联网云端数据库通过虚拟化技术将存储资源池化,以按需分配、弹性扩容和全球协同的方式,彻底取代了传统本地服务器的物理限制,成为企业数字化转型的核心基础设施,想象一下,你不再需要购买沉重的硬盘,也不需要担心机房断电或火灾,数据就像自来水一样,打开水龙头就有,用多少付多少,这种转变不仅仅是技术的升级,更是商业逻辑的重……

    2026年6月1日
    5600
  • 直播行业在杭州租独享带宽要注意什么,杭州独享带宽价格多少

    直播行业在杭州租独享带宽,核心是优先选择BGP多线、低延迟、带DDoS防护的高质量线路,并且务必在签约前测试实际效果和明确合同条款,避免陷入低价陷阱或业务中断,杭州独享带宽价格:低价套餐背后的真相直播行业对带宽的依赖度极高,尤其是上行带宽,在杭州,由于直播产业集中,独享带宽的报价五花八门,当你搜索“杭州独享带宽……

    2026年8月10日
    1300
  • 无法进入虚拟机怎么办?虚拟机打不开的解决方法

    虚拟机打不开通常不是单一原因造成的,绝大多数情况下是虚拟化服务被占用、配置文件损坏或系统权限拦截所致,按顺序排查以下六个方向,多数问题能在十分钟内解决,先分清打不开的具体表现处理故障前,先把现象归个类,虚拟机无法进入的表现千差万别,但大致集中在三类场景里,每类的处理逻辑完全不同,双击启动图标后直接报错,提示“V……

    2026年9月5日
    300
  • 武汉电商平台服务器租用如何保障大促期间访问稳定,服务器怎么选

    武汉电商平台在2026年大促期间要保访问稳定,核心答案就一句话:提前压测、冗余带宽、自动扩容、多节点容灾,这四件事做到位,服务器就不会拖你后腿,大促的流量不是线性增长的,它像一堵墙一样砸过来,平日里跑得欢的服务器,在整点秒杀那几分钟里,CPU和带宽可能瞬间被打满,武汉本地的电商卖家,尤其是做小龙虾、热干面、周黑……

    服务器宽带 2026年8月9日
    700
  • html文件怎么上传到服务器?如何将html网页部署到服务器

    将HTML文件上传到服务器的最核心方法是使用FTP客户端(如FileZilla)或服务器自带的文件管理器,通过建立连接后拖拽文件至网站根目录即可完成部署,很多初学者在制作好第一个网页后,面对空荡荡的服务器后台往往感到无从下手,这就像把做好的家具搬进新房子一样,只要找到正确的入口和搬运工具,过程并不复杂,我们将通……

    2026年6月11日
    6400
  • 虚拟机换网卡后网络不通怎么办,网卡驱动如何更新?

    虚拟机更换网卡后网络不通,九成是网卡配置文件里的MAC地址或设备名没跟着更新,系统还在按旧网卡找接口,把配置文件和实际设备对齐就能解决,为什么换个网卡就断网?先理解底层逻辑虚拟机不像物理机插拔网线那么直观,它的一切网络行为都依赖虚拟化层模拟出来的设备,你换了一张新网卡,从宿主机角度看是添加了硬件,但从虚机内部看……

    2026年9月3日
    200
  • MainWP专业版优惠套餐值得买吗?WordPress多站点管理插件推荐

    MainWP专业版优惠套餐是目前管理多站点WordPress网站性价比最高的解决方案,尤其适合拥有5个以上站点的代理商或大型团队,能显著降低单站授权成本并提升运维效率,在WordPress生态中,站点管理一直是个痛点,当你手里只有一个博客时,登录后台手动更新插件、备份数据还能应付,但一旦站点数量增加到十几个甚至……

    2026年6月24日
    3110
  • access数据库怎么学?access数据库入门教程

    Access数据库教学视频是零基础用户快速掌握数据管理技能的最佳途径,通过可视化操作替代代码编写,能显著降低学习门槛并提升办公效率,在数字化转型的浪潮中,数据管理已成为职场核心竞争力之一,对于非计算机专业的职场人士而言,面对Excel处理万行数据时的卡顿,或是对SQL代码的畏难情绪,Access数据库提供了一种……

    2026年7月3日
    2700
  • FTP下载文件中断怎么办?如何稳定解决FTP传输掉线问题

    FTP下载中断通常由网络波动、服务器超时设置或客户端配置不当引起,优先检查本地网络稳定性并调整FTP客户端的超时与重试设置即可解决大部分问题,文件传输过程中突然断线,不仅让人焦虑,还可能导致数据损坏或需要重新上传,这种体验在涉及大文件或高并发传输时尤为常见,业内专家指出,FTP协议本身基于TCP连接,对网络环境……

    2026年6月20日
    4700
  • 虚拟机x命令怎么用?,虚拟机常用命令有哪些

    虚拟机x命令(这里以最常用的virsh为例)是管理KVM虚拟机的核心工具,新手只要掌握开机、关机、快照和迁移几个基本参数,就能应对八成日常操作,但真正容易踩坑的其实是存储卷路径和网络配置,如果你刚接触Linux服务器虚拟化,面对一堆virsh指令感到迷茫,这篇指南会从零带你上手,并告诉你哪些错误多数新手都会犯……

    2026年9月2日
    300

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注