简单批处理管理你的VM虚拟机服务

来源:互联网 发布:淘宝电脑产品图大小 编辑:程序博客网 时间:2024/05/17 08:13

http://bbs.cfanclub.net/thread-497122-1-1.html

 

以前对于虚拟机的服务:开始——运行——services.msc,找到VM打头的服务,是这样的,比较麻烦。

2011-08-13_154728.jpg

VMware USB Arbitration Service

其中 要用VM虚拟机的时候 VMware Authorization Service是必须开启的。VMware DHCP Service、VMware NAT Service是跟网络有关的。不开启虚拟机用不了网络。VMware Agent Service和VMware USB Arbitration Service设置为手动就可以,用虚拟机的时候一般也不用启动。(如果需要的话可以自己用相同的语句复制上就行)

网络连接相关:
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。