@echo off
:main
cls
echo.
echo.
echo 1.產生自動設定電腦名稱,DNS,網關,IP指令碼,IPX內部網路號
echo.
echo 2.網刻伺服器自動設定
echo.
echo 3.電信網通線路切換產生器
echo.
echo 4.退出指令碼
echo.
echo 請輸入1,2,3或4,輸入其他字元,後果自負.
:restart1
set /p select=請輸入:
set /a select=%select%-0
if %select%==1 goto ipdnsipx
if %select%==2 goto netghost
if %select%==3 goto dianxin
if %select%==4 goto endend
if %select% gtr 4 goto errorselect1
:ipdnsipx
cls
echo -------------------------------------------------------
echo.
echo 說明
echo 本批處理可以根據不同使用場合按照提示
echo 輸入IP,DNS(最多支援兩個DNS),網關,計算
echo 機名.組建組態相關資訊的指令碼功能.
echo -------------------------------------------------------
:restart5
color 0a
echo.
echo 請輸入1或者2,輸入其他字元,後果自負.
echo.
echo 1.產生自動設定電腦名稱,DNS,網關,IP指令碼,IPX內部網路號
echo.
echo 2.返回主菜單
echo.
set /p select=請輸入:
set /a select=%select%-0
if %select%==1 goto config5
if %select%==2 goto main
if %select% gtr 2 goto errorselect5
:config5
echo 開始組建組態電腦名稱,網關,DNS,IP,IPX協議內部網路號的指令碼,請根據提示輸入必要的參數
echo.
set ipaddr=192.168.0.
set mask1=254
set submask1=255.255.255.0
set qz=pc
set dns1=61.177.7.1
set dns2=192.168.0.254
echo 預設電腦名稱首碼為:%qz%,IP地址前三欄位為:%ipaddr%,網關為:%ipaddr%%mask1%,子網路遮罩為%submask1%,第一DNS為%dns1%,第二DNS為%DNS2%.如需修改這裡的資訊,請注意下面的提示,按照提示輸入即可完成相關資訊的修改.否則,直接敲斷行符號鍵將使用預設配置.
echo.
set /p ipaddr=請輸入IP地址的前三個欄位例如:192.168.0. 一定要按照這個格式輸入:
color 70
set /p mask1=請輸入網關最後一個欄位,例如192.168.0.254中的254:
color 71
set /p submask1=請輸入子網路遮罩,格式為255.255.255.0:
color 74
set /p qz=請輸入電腦名稱首碼:
color 72
set /p dns1=請輸入第一DNS地址:
color 73
set /p dns2=請輸入第二DNS地址:
color fc
echo 正在組建組態指令碼
echo @echo off>%systemroot%\ipconfig.bat
echo cls>>%systemroot%\ipconfig.bat
echo echo --------------------------------------------------------->>%systemroot%\ipconfig.bat
echo echo QQ:66596854歡迎交流>>%systemroot%\ipconfig.bat
echo echo Mail:fan2800@hotmail.com>>%systemroot%\ipconfig.bat
echo echo.>>%systemroot%\ipconfig.bat
echo echo 說明>>%systemroot%\ipconfig.bat
echo echo 本批處理可以實現根據需要自動設定IP,>>%systemroot%\ipconfig.bat
echo echo DNS,網關,電腦名稱,最多支援兩個DNS>>%systemroot%\ipconfig.bat
echo echo 批處理啟動密碼為wuliaodefei,可以根據>>%systemroot%\ipconfig.bat
echo echo 需要修改變數PW來改變啟動密碼。修改適>>%systemroot%\ipconfig.bat
echo echo 合自己的DNS,網關,電腦名稱.可以看批>>%systemroot%\ipconfig.bat
echo echo 處理的相關注釋的地方,在批處理的結尾>>%systemroot%\ipconfig.bat
echo echo 還可以繼續進行添加命令,實現更多功能,>>%systemroot%\ipconfig.bat
echo echo 例如,匯入CS的CD-KEY,自動安裝冰點等.>>%systemroot%\ipconfig.bat
echo echo ------------------------------------------------------->>%systemroot%\ipconfig.bat
echo set sz=3 >>%systemroot%\ipconfig.bat
echo :pw>>%systemroot%\ipconfig.bat
echo set /p pw=請輸入密碼:>>%systemroot%\ipconfig.bat
echo set /a sz=%%sz%%-1 >>%systemroot%\ipconfig.bat
echo if %%pw%%==wuliaodefei goto config>>%systemroot%\ipconfig.bat
echo echo 密碼錯誤,還有%%sz%%次機會>>%systemroot%\ipconfig.bat
echo if %%sz%%==0 exit>>%systemroot%\ipconfig.bat
echo color ca >>%systemroot%\ipconfig.bat
echo goto pw>>%systemroot%\ipconfig.bat
echo :config>>%systemroot%\ipconfig.bat
echo cls>>%systemroot%\ipconfig.bat
echo color 0A>>%systemroot%\ipconfig.bat
echo echo 歡迎使用>>%systemroot%\ipconfig.bat
echo echo.>>%systemroot%\ipconfig.bat
echo cls>>%systemroot%\ipconfig.bat
echo :ipconfigstart>>%systemroot%\ipconfig.bat
echo set ip=0 >>%systemroot%\ipconfig.bat
echo set /p ip=請輸入IP:>>%systemroot%\ipconfig.bat
echo if %%ip%%==0 goto errorip >>%systemroot%\ipconfig.bat
echo set /a ip=%%ip%%-0>>%systemroot%\ipconfig.bat
echo if %%ip%% lss 10 goto 1to9 >>%systemroot%\ipconfig.bat
echo if %%ip%% lss 100 goto 10to99>>%systemroot%\ipconfig.bat
echo if %%ip%% lss 255 goto 100to254>>%systemroot%\ipconfig.bat
echo if %%ip%% geq 255 goto error1>>%systemroot%\ipconfig.bat
echo :1to9>>%systemroot%\ipconfig.bat
echo set a=00>>%systemroot%\ipconfig.bat
echo goto ipconfig>>%systemroot%\ipconfig.bat
echo :10to99>>%systemroot%\ipconfig.bat
echo set a=00>>%systemroot%\ipconfig.bat
echo set /a a=%%a%%-0>>%systemroot%\ipconfig.bat
echo goto ipconfig>>%systemroot%\ipconfig.bat
echo :100to254>>%systemroot%\ipconfig.bat
echo set a=>>%systemroot%\ipconfig.bat
echo :ipconfig>>%systemroot%\ipconfig.bat
echo echo 您設定的電腦名稱為:%qz%%%a%%%%ip%% IP地址為:%ipaddr%%%ip%% 網關為:%ipaddr%%mask1%>>%systemroot%\ipconfig.bat
echo echo 開始配置電腦名稱>>%systemroot%\ipconfig.bat
echo color 1a >>%systemroot%\ipconfig.bat
echo reg add HKLM\system\currentcontrolset\control\computername\computername\ /v computername /t reg_sz /d %qz%%%a%%%%ip%% /f ^>nul>>%systemroot%\ipconfig.bat
echo reg add HKLM\system\currentcontrolset\services\tcpip\Parameters\ /v "NV Hostname" /t reg_sz /d %qz%%%a%%%%ip%% /f ^>nul>>%systemroot%\ipconfig.bat
echo echo 電腦名稱配置完成>>%systemroot%\ipconfig.bat
echo set /a ip=%%ip%%-0>>%systemroot%\ipconfig.bat
echo echo 開始配置IP,網關>>%systemroot%\ipconfig.bat
echo color 2a >>%systemroot%\ipconfig.bat
echo netsh interface ip set address "本地串連" source=static %ipaddr%%%ip%% %submask1% %ipaddr%%mask1% 1 ^>nul>>%systemroot%\ipconfig.bat
echo echo IP配置完成>>%systemroot%\ipconfig.bat
echo echo 開始配置DNS>>%systemroot%\ipconfig.bat
echo netsh interface ip set dns name="本地串連" source=static %dns1% primary ^>nul>>%systemroot%\ipconfig.bat
echo netsh interface ip add dns name="本地串連" %dns2% ^>nul>>%systemroot%\ipconfig.bat
echo echo DNS配置完成>>%systemroot%\ipconfig.bat
echo echo 開始配置IPX協議內部網路號>>%systemroot%\ipconfig.bat
echo color 3a >>%systemroot%\ipconfig.bat
echo reg add HKLM\SYSTEM\CurrentControlSet\Services\NwlnkIpx\Parameters /f /v VirtualNetworkNumber /t REG_DWORD /d %%ip%%>>%systemroot%\ipconfig.bat
echo echo IPX協議內部網路號配置完成>>%systemroot%\ipconfig.bat
echo echo 刪除註冊表自啟動項>>%systemroot%\ipconfig.bat
echo reg delete HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run /f /v computerconfigscript >>%systemroot%/ipconfig.bat
echo echo 刪除註冊表啟動項目完畢>>%systemroot%\ipconfig.bat
echo echo 系統將在30秒後自動重新啟動,輸入N取消重起,並在稍後手動重起電腦 >>%systemroot%\ipconfig.bat
echo start %%systemroot%%\system32\shutdown -r -t 30>>%systemroot%\ipconfig.bat
echo set /p restart1=>>%systemroot%\ipconfig.bat
echo if %%restart1%%==n start %%systemroot%%\system32\shutdown -a>>%systemroot%\ipconfig.bat
echo goto end>>%systemroot%\ipconfig.bat
echo :error1>>%systemroot%\ipconfig.bat
echo echo 您輸入的IP違反了IP地址使用規則,請根據需要務必輸入1--254之間的數字>>%systemroot%\ipconfig.bat
echo goto ipconfigstart>>%systemroot%\ipconfig.bat
echo :errorip>>%systemroot%\ipconfig.bat
echo echo 您沒有輸入IP,請重新輸入>>%systemroot%\ipconfig.bat
echo goto ipconfigstart>>%systemroot%\ipconfig.bat
echo color fc >>%systemroot%\ipconfig.bat
echo :end>>%systemroot%\ipconfig.bat
echo rem 11月19日晚版>>%systemroot%\ipconfig.bat
echo exit>>%systemroot%\ipconfig.bat
echo 配置指令碼產生完畢
echo 正在設定註冊表自啟動指令碼
reg add HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run /f /v computerconfigscript /t REG_SZ /d %systemroot%\ipconfig.bat >nul
echo 註冊表啟動項目添加完成
echo 10秒後程式自動結束或直接關閉程式退出
ping /n 15 127.0.0.1 >nul
exit
:errorselect5
echo 選擇錯誤,請重新選擇
goto restart5
:errorselect1
echo 選擇錯誤,請重新選擇
goto restart1
:netghost
color 0a
cls
echo --------------------------------------------------------
echo.
echo 說明
echo 本批處理可以按要求設定GHOST伺服器的
echo 相關資訊,並自動調用GHOSTSERVER程式
echo 以方便設定.本批處理只支援單網卡,網
echo 絡屬性名稱為"本地串連".否則此批處理
echo 不適用或者達不到預期的效果.此指令碼為
echo 現場使用版,即當前的設定只對指令碼運行
echo 中起作用,指令碼運行時非正常退出時也達
echo 不到預期的效果,謝謝使用
echo -------------------------------------------------------
echo.
echo 1.進入設定GHOST伺服器
echo.
echo 2.自動還原以前設定
echo.
echo 3.返回主菜單
echo.
echo 請輸入1,2或3,輸入其他字元,後果自負.
:restart
set /p select=請輸入:
set /a select=%select%-0
if %select%==1 goto config1
if %select%==2 goto config2
if %select%==3 goto main
if %select% gtr 3 goto errorselect
:config1
set /p ip1=請輸入當前GHOST伺服器需要使用的IP地址:
set /p mask1=請輸入當前GHOST伺服器需要使用的子網路遮罩:
echo @echo off >%systemroot%\netghost.bat
echo echo 備份當前的網路設定 >>%systemroot%\netghost.bat
echo ipconfig /all ^>%systemroot%\ipconfigbackup.txt>>%systemroot%\netghost.bat
echo echo 當前網路設定備份完成>>%systemroot%\netghost.bat
echo echo 清除當前DNS,網關設定>>%systemroot%\netghost.bat
echo netsh interface ip delete address "本地串連" gateway=all ^>nul >>%systemroot%\netghost.bat
echo netsh interface ip delete dns "本地串連" all ^>nul >>%systemroot%\netghost.bat
echo echo 配置當前網路設定 >>%systemroot%\netghost.bat
echo netsh interface ip set address "本地串連" source=static %ip1% %mask1% ^>nul >>%systemroot%\netghost.bat
echo echo 當前網路設定完畢 >>%systemroot%\netghost.bat
echo echo 啟動GHOST服務端程式 >>%systemroot%\netghost.bat
echo start ghostsrv83.exe >>%systemroot%\netghost.bat
echo del %%systemroot%%\netghost.bat >>%systemroot%\netghost.bat
echo exit >>%systemroot%\netghost.bat
%systemroot%\netghost.bat
exit
:config2
find /i "IP Address" %systemroot%\ipconfigbackup.txt >ipaddr.txt
for /f "skip=2 tokens=15" %%p in (ipaddr.txt) do set ipaddr=%%p
find /i "Subnet Mask" %systemroot%\ipconfigbackup.txt >subnetmask.txt
for /f "skip=2 tokens=15" %%b in (subnetmask.txt) do set sub=%%b
find /i "Default Gateway" %systemroot%\ipconfigbackup.txt >gateway.txt
for /f "skip=2 tokens=13" %%g in (gateway.txt) do set gate=%%g
find /i "DNS Servers" %systemroot%\ipconfigbackup.txt >dnss.txt
for /f "skip=2 tokens=15" %%d in (dnss.txt) do set dns1=%%d
for /f %%n in (%systemroot%\ipconfigbackup.txt) do set dns2=%%n
del ipaddr.txt
del subnetmask.txt
del gateway.txt
del dnss.txt
echo %ipaddr% %sub% %gate% %dns1% %dns2%
echo @echo off >%systemroot%\restore.bat
echo echo 恢複IP,DNS,子網路遮罩,網關設定 >>%systemroot%\restore.bat
echo netsh interface ip set address "本地串連" source=static %ipaddr% %sub% %gate% 1 ^>nul >>%systemroot%\restore.bat
echo netsh interface ip set dns name="本地串連" source=static %dns1% primary ^>nul >>%systemroot%\restore.bat
echo netsh interface ip add dns name="本地串連" %dns2% ^>nul >>%systemroot%\restore.bat
echo echo 恢複完成>>%systemroot%\restore.bat
echo del %%systemroot%%\restore.bat >>%systemroot%\restore.bat
echo exit >>%systemroot%\restore.bat
%systemroot%\restore.bat
exit
:errorselect
echo 選擇錯誤,請重新選擇
goto restart
:dianxin
color 0a
cls
echo -------------------------------------------------------
echo.
echo 說明
echo 本批處理可以按要求設定進行電信與網
echo 通之間的線路切換.本批處理只支援單否
echo 網卡,網路屬性名稱為"本地串連".則此
echo 批處理不適用或者達不到預期的效果.
echo 此指令碼為現場使用版,即當前的設定只
echo 對指令碼運行中起作用,指令碼運行時非正常
echo 退出時也達不到預期的效果,謝謝使用
echo -------------------------------------------------------
echo.
echo 請輸入1或者2,輸入其他字元,後果自負.
echo.
echo 1.進入電信網通線路切換產生器
echo.
echo 2.返回主菜單
echo.
:restart2
set /p select=請輸入:
set /a select=%select%-0
if %select%==1 goto config3
if %select%==2 goto main
if %select% gtr 2 goto errorselect3
:config3
echo 特別注意:使用本指令碼切換網關以後,在網路屬性裡面看到網關地址有出入,但不影響使用,此時在網路屬性裡面看到的網關,不起任何作用,但不要做任何操作.
echo.
set /p gateway1=請輸入要切換的網關:
set /p dns1=請輸入要切換的DNS地址:
echo @echo off >gatewaychange.bat
echo echo 切換中,請稍等. >>gatewaychange.bat
echo netsh interface ip delete dns "本地串連" all ^>nul >>gatewaychange.bat
echo netsh interface ip set dns name="本地串連" source=static %dns1% primary ^>nul >>gatewaychange.bat
echo route delete 0.0.0.0 >>gatewaychange.bat
echo route add 0.0.0.0 mask 0.0.0.0 %gateway1% >>gatewaychange.bat
rem 到這裡本指令碼以實現了,產生切換電信與網通線路的指令檔.只是產生指令檔不會自動運行,方便只需要指令檔然後自己處理產生後的指令檔的朋友使用.
rem 把下面2行前面的rem字元刪除,可以實現即時的線路切換(輸入相關資訊後會自動運行產生的指令碼,無需要再次運行產生的指令碼就可以完成線路切換)
rem echo del gatewaychange.bat >>gatewaychange.bat
rem gatewaychange.bat
exit
:errorselect3
echo 選擇錯誤,請重新選擇
goto restart2
:endend
exit