这是我参考了一些批处理写出来的网络设置工具,引用了不少代码,功能相对比较完善,界面也较美观,适用于WINXP和WIN7,但有一些问题没有解决,所以恳请大家帮忙完善这个批处理复制代码
- @echo off
- mode con cols=80 lines=19 &color 1f
- title Windows系统网络环境切换工具
- echo.
- echo *******************************************************************************
- echo **************************Windows系统网络环境切换工具**************************
- echo *******************************************************************************
- echo.
- echo.
- pause
- goto system
- :system
- cls
- echo.
- echo 请选择系统(1-3):
- echo.
- echo 1 WINDOWS XP
- echo.
- echo 2 WINDOWS 7
- echo.
- echo 3 放弃选择,退出
- echo.
- set /p select=请选择系统
- if "%select%"=="1" goto menu
- if "%select%"=="2" goto menu7
- if "%select%"=="3" goto exit2
- goto systemerror
- :systemerror
- cls
- echo 选择无效,请重新选择
- echo.
- echo 请选择系统(1-3):
- echo.
- echo 1 WINDOWS XP
- echo.
- echo 2 WINDOWS 7
- echo.
- echo 3 放弃选择,退出
- echo.
- set /p select=请选择系统
- if "%select%"=="1" goto menu
- if "%select%"=="2" goto menu7
- if "%select%"=="3" goto exit2
- goto systemerror
- :menu
- FOR /F "tokens=2*" %%i IN ('ipconfig/all^|find /i "Ethernet adapter "') DO set name=%%j
- FOR /F "tokens=1* delims=:" %%i in ("%name%") do set 网卡名称=%%i
- @echo off
- cls
- set a=^set /p=■%b%^<nul^&ping/n 0 127.1^>nul^&
- echo.
- echo 正在获取网卡信息,请稍后
- echo.
- echo ┌──────────────────────────────────────┐
- set/p= <nul&%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%
- echo 100%%
- echo └──────────────────────────────────────┘
- set b=
- set a=■
- set /a z=100
- echo 获取完成
- echo.
- echo.
- echo 当前活动的网络适配器名称为 "%网卡名称%". 本程序将对此网络适配器进行设置
- echo.
- echo.
- pause
- cls
- echo.
- echo 请选择网络类型(1-4):
- echo.
- echo 1 切换到静态IP
- echo.
- echo 2 切换到动态IP
- echo.
- echo 3 返回系统选择
- echo.
- echo 4 放弃选择,退出
- set /p select=
- if "%select%"=="1" goto jt
- if "%select%"=="2" goto DHCP
- if "%select%"=="3" goto system
- if "%select%"=="4" goto exit2
- goto menuerror
- :menuerror
- cls
- echo 选择无效,请重新选择
- echo.
- echo 请选择网络类型(1-4):
- echo.
- echo 1 切换到静态IP
- echo.
- echo 2 切换到动态IP
- echo.
- echo 3 返回系统选择
- echo.
- echo 4 放弃选择,退出
- set /p select=
- if "%select%"=="1" goto jt
- if "%select%"=="2" goto DHCP
- if "%select%"=="3" goto system
- if "%select%"=="4" goto exit2
- goto menuerror
- :jt
- cls
- echo 设置静态IP
- echo 正在设置 IP…设置网关…设置子网掩码
- netsh interface ip set address name="%网卡名称%" source=static addr=192.168.101.4 mask=255.255.255.0
- netsh interface ip set address name="%网卡名称%" source=static gateway=192.168.101.1
- echo 正在设置 DNS…
- netsh interface ip set dns name="%网卡名称%" source=static addr=8.8.8.8 register=PRIMARY
- netsh interface ip add dns name="%网卡名称%" addr=8.8.4.4 index=2
- echo 正在刷新设置……
- ipconfig /flushdns
- goto exit
- :DHCP
- cls
- echo 设置动态IP
- echo 正在设置 IP…设置网关…设置子网掩码
- netsh interface ip set address name="%网卡名称%" source=dhcp
- echo 设置 DNS……
- netsh interface ip set dns name="%网卡名称%" source=dhcp
- echo 正在刷新设置……
- ipconfig /flushdns
- goto exit
- :menu7
- FOR /F "tokens=2*" %%i IN ('ipconfig/all^|find /i "以太网适配器 "') DO set name=%%j
- FOR /F "tokens=1* delims=:" %%i in ("%name%") do set 网卡名称=%%i
- @echo off
- cls
- set a=^set /p=■%b%^<nul^&ping/n 0 127.1^>nul^&
- echo.
- echo 正在获取网卡信息,请稍后
- echo.
- echo ┌──────────────────────────────────────┐
- set/p= <nul&%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%
- echo 100%%
- echo └──────────────────────────────────────┘
- set b=
- set a=■
- set /a z=100
- echo 获取完成
- echo.
- echo.
- echo 当前活动的网络适配器名称为 "%网卡名称%". 本程序将对此网络适配器进行设置
- echo.
- echo.
- pause
- cls
- echo.
- echo 请选择网络类型(1-4):
- echo.
- echo 1 切换到静态IP
- echo.
- echo 2 切换到动态IP
- echo.
- echo 3 返回系统选择
- echo.
- echo 4 放弃选择,退出
- set /p select=
- if "%select%"=="1" goto jt7
- if "%select%"=="2" goto DHCP7
- if "%select%"=="3" goto system
- if "%select%"=="4" goto exit2
- goto menu7error
- :menu7error
- cls
- echo 选择无效,请重新选择
- echo.
- echo 请选择网络类型(1-4):
- echo.
- echo 1 切换到静态IP
- echo.
- echo 2 切换到动态IP
- echo.
- echo 3 返回系统选择
- echo.
- echo 4 放弃选择,退出
- set /p select=
- if "%select%"=="1" goto jt7
- if "%select%"=="2" goto DHCP7
- if "%select%"=="3" goto system
- if "%select%"=="4" goto exit2
- goto menu7error
- :jt7
- cls
- echo 设置静态IP
- echo 正在设置 IP…设置网关…设置子网掩码
- netsh interface ipv4 set address "%网卡名称%" static 192.168.101.4 255.255.255.0 192.168.101.1
- echo 正在设置 DNS…
- netsh interface ipv4 set dns name="%网卡名称%" source=static addr=8.8.8.8
- netsh interface ipv4 add dns name="%网卡名称%" addr=8.8.4.4 index=2
- echo 正在刷新设置……
- ipconfig /flushdns
- goto exit
- :DHCP7
- cls
- echo 设置动态IP
- echo 正在设置 IP…设置网关…设置子网掩码
- netsh interface ipv4 set address "%网卡名称%" dhcp
- echo 设置 DNS……
- netsh interface ipv4 set dns "%网卡名称%" dhcp
- echo 正在刷新设置……
- ipconfig /flushdns
- goto exit
- :exit
- cls
- @echo off
- set c=^set /p=■%d%^<nul^&ping/n 0 127.1^>nul^&
- echo.
- echo 程序正在设置网络,请稍后
- echo.
- echo ┌──────────────────────────────────────┐
- set/p= <nul&%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%%c%
- echo 100%%
- echo └──────────────────────────────────────┘
- set d=
- set c=■
- set /c z=100
- goto exit1
- :exit1
- echo.
- echo.
- echo.
- echo ************恭喜!网络设置以完成。
- echo.
- echo.
- echo.
- echo.
- pause
- exit
- :exit2
- cls
- echo 程序即将退出
- pause
- exit
欢迎光临 批处理之家 (http://www.bathome.net/) | Powered by Discuz! 7.2 |