简单批处理管理你的VM虚拟机服务 |
发布时间: 2012/7/5 9:29:38 |
相信有不少人已经装了VM虚拟机 也有不少人 用 VM虚拟机只是偶尔的事 并不是经常用 但是 VM虚拟机的 服务 被设置为 自动开启 不免有点浪费了系统资源 但设置为手动之后 用VM虚拟机的时候 又不得不去 一个一个服务打开 很麻烦 下面我就教大家用简单的批处理来解决这些问题 首先 先看一下 VM虚拟机的服务和连接 总共有5个服务 ![]() 分别是 ![]() VMware Agent Service、 ![]() VMware Authorization Service、 ![]() VMware DHCP Service、 ![]() VMware NAT Service、 ![]() VMware USB Arbitration Service 其中 要用VM虚拟机的时候 VMware Authorization Service是必须开启的。VMware DHCP Service、VMware NAT Service是跟网络有关的。不开启虚拟机用不了网络。VMware Agent Service和VMware USB Arbitration Service设置为手动就可以,用虚拟机的时候一般也不用启动。(如果需要的话可以自己用相同的语句复制上就行) 还有2个网络连接 ![]() VMware Network Adapter VMnet1、VMware Network Adapter VMnet8 这两个要是不用虚拟机的话也用不到。一会就和那些服务一起开启和禁止。 下面说语句 启动停止服务的语句 net start/stop "服务名称" (ps:填写的是服务名称 不是显示名称这个别搞错了) 开启禁止网络连接的语句 netsh interface set interface "网络连接名" enable/disable (""这个引号最好带上,为了避免不必要的麻烦。) 也就是说 简单的 代码就是 启动的 @echo off echo 正在启用服务... net start "VMAuthdService" net start "VMnetDHCP" net start "VMware NAT Service" echo 正在启用网络连接... netsh interface set interface "VMware Network Adapter VMnet1" enable netsh interface set interface "VMware Network Adapter VMnet8" enable echo 网络连接VMware Network Adapter VMnet1、VMware Network Adapter VMnet8启动成功 pause 禁止的 @echo off echo 正在禁用服务服务... net stop "VMAuthdService" net stop "VMnetDHCP" net stop "VMware NAT Service" echo 正在禁用网络连接... netsh interface set interface "VMware Network Adapter VMnet1" disable netsh interface set interface "VMware Network Adapter VMnet8" disable echo 网络连接VMware Network Adapter VMnet1、VMware Network Adapter VMnet8禁用成功 pause echo 后面加的是你想说的话。。。这些就随便了。 总之代码简单来说就是这样了。 这样两个简单的批处理文件,就解决这些问题了。 (PS:如果Win7系统下运行请右键选择 以管理员身份运行 否则将会出现错误5!) 如果还麻烦可以把这两个合成一个。 下面是我现在用的 @echo off for /f "skip=3 tokens=4" %%i in ('sc query "VMAuthdService"') do set "zt=%%i" &goto :next :next if /i "%zt%"=="RUNNING" ( echo 服务VMware Authorization Service正在运行 ) else ( echo 服务VMware Authorization Service已停止 ) for /f "skip=3 tokens=4" %%i in ('sc query "VMnetDHCP"') do set "zt=%%i" &goto :next :next if /i "%zt%"=="RUNNING" ( echo 服务VMware DHCP Service正在运行 ) else ( echo 服务VMware DHCP Service已停止 ) for /f "skip=3 tokens=4" %%i in ('sc query "VMware NAT Service"') do set "zt=%%i" &goto :next :next if /i "%zt%"=="RUNNING" ( echo 服务VMware NAT Service正在运行 ) else ( echo 服务VMware NAT Service已停止 ) pause echo 1:启用VM虚拟机服务(VMware Authorization Service、VMware DHCP Service、VMware NAT Service)及网络连接(VMware Network Adapter VMnet1、VMware Network Adapter VMnet8) echo 2:禁用VM虚拟机服务(VMware Authorization Service、VMware DHCP Service、VMware NAT Service)及网络连接(VMware Network Adapter VMnet1、VMware Network Adapter VMnet8) choice /c:12 /m "根据选项请选择..." if errorlevel 2 goto two if errorlevel 1 goto one :one echo 正在启用服务... net start "VMAuthdService" net start "VMnetDHCP" net start "VMware NAT Service" echo 正在启用网络连接... netsh interface set interface "VMware Network Adapter VMnet1" enable netsh interface set interface "VMware Network Adapter VMnet8" enable echo 网络连接VMware Network Adapter VMnet1、VMware Network Adapter VMnet8启动成功 echo 按任意键退出... pause>nul exit :two echo 正在禁用服务服务... net stop "VMAuthdService" net stop "VMnetDHCP" net stop "VMware NAT Service" echo 正在禁用网络连接... netsh interface set interface "VMware Network Adapter VMnet1" disable netsh interface set interface "VMware Network Adapter VMnet8" disable echo 网络连接VMware Network Adapter VMnet1、VMware Network Adapter VMnet8禁用成功 echo 按任意键退出... pause>nul exit 加了个 检测服务是否开启 都是一些简单的语句。 如果不爱自己写的 可以把 代码直接复制到记事本里 把 文件名改为 VMware虚拟机服务、网络连接.bat 就OK。 ![]() ![]() 本文出自:亿恩科技【www.enkj.com】 |