标题: [原创]共享自己写的BAT网络配置修改工具.
[打印本页]
作者: cnLiou
时间: 2008-5-10 04:24
标题: [原创]共享自己写的BAT网络配置修改工具.
@Color 0A
@Title 网络配置工具 By Liou
@Pushd %CD%
@Prompt $G
@SETLOCAL ENABLEDELAYEDEXPANSION
@REM 网络名称配置, Network后面的数字是运行脚本时的第一个参数
@Set NetWork1=本地连接
@Set NetWork2=无线连接
@REM 网络参数配置, 查看脚本帮助时可以看到此配置。
@Set NetworkCfg0=自动获取配置
@Set NetworkCfg1=本地局域网 192.168.0.1
@Set NetworkCfg2=本地局域网 192.168.1.1
@Set NetworkCfg-c=ipconfig /all
@Set NetworkCfg-h=参数配置查看
@REM 各网络配置命令,用一行命令完成。
@Set NetworkCfgCall0=netsh interface ip set address name="NetworkName" source=dhcp
@Set NetworkCfgCall1=netsh interface ip set address name="NetworkName" static 192.168.0.1 255.255.255.0
@Set NetworkCfgCall2=netsh interface ip set address name="NetworkName" static 192.168.1.1 255.255.255.0
@Set NetworkCfgCall-c=Goto CheckCfg
@Set NetworkCfgCall-h=Goto ScriptUsage
@REM 单参数命令放在此前判断,判断如果网络配置参数为空,则默认设置本地连接,第一个参数即为网络配置参数。
@IF "%1"=="" (
@Goto CheckCfg
)
@IF "%2"=="" (
@Set Network=%Network1%
@Call Set NetworkCfg=%%NetworkCfg%1%%
@IF NOT DEFINED NetworkCfg%1 Goto ParamError
@Set NetworkCfgIndex=%1
@Goto NetworkCfg
)
@Set Network=
@Set NetworkCfg=
@Set NetworkCfgIndex=%2
@Call Set Network=%%Network%1%%
@IF NOT DEFINED Network%1 Goto ParamError
@Call Set NetworkCfg=%%NetworkCfg%2%%
@IF NOT DEFINED NetworkCfg%2 Goto ParamError
@Goto NetworkCfg
:ParamError
@Echo 你执行的命令为IP %1 %2
@Echo.
@Echo 参数使用不正确.请使用IP /C 查看配置说明.
@Echo.
@Goto ScriptUsage
@REM ==========================LocalNet==========================
:NetworkCfg
@Echo 正在查看或修改 "%Network%" 的网络配置, 相关命令或配置为 "%NetworkCfg%" , 请稍候......
@Call Set NetworkCfgCall=%%NetworkCfgCall%NetworkCfgIndex%%%
@IF NOT DEFINED NetworkCfgCall%NetworkCfgIndex% Goto ScriptUsage
@Echo =====================================================================================
@Call Set NetworkCfgCall=%%NetworkCfgCall:NetworkName=%Network%%%
@%NetworkCfgCall%
@Goto CheckCfg
@REM ==========================ScriptUsage==========================
:ScriptUsage
@Echo 参数配置查看
@Echo ---------------------------------------------
@Echo.
@Echo 第一个参数配置(网卡序号,省略时默认设置第一个网卡):
@Echo.
@FOR /L %%i IN (1,1,10) DO @Call Set NetworkI=%%Network%%i%% && (@IF DEFINED Network%%i @Echo =%%i, !NetworkI!)
@Echo.
@Echo ---------------------------------------------
@Echo.
@Echo 第二个参数配置(网络配置序号):
@Echo.
@FOR /L %%i IN (1,1,20) DO @Call Set NetworkCfgI=%%NetworkCfg%%i%% && (@IF DEFINED NetworkCfg%%i @Echo =%%i, !NetworkCfgI!)
@Echo =-c, %NetworkCfg-c%
@Echo =-h, %NetworkCfg-h%
@Echo.
@Echo ---------------------------------------------
@Echo.
@Pause
@Exit
:CheckCfg
@Echo 当前网络配置如下:
@IpConfig.exe /all
@Echo.
@Pause
@Exit
[
Last edited by cnLiou on 2008-5-10 at 04:43 AM ]
作者: llrrqq
时间: 2008-5-10 21:57
这是个好东西啊,谢谢你!