簡單批處理管理你的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.vbseamall.com】 |