因為在學校各個地方的IP位址的擷取方式不同,特别是有時候要配無線路由器,是以要老是在本地連接配接裡面輸入IP很麻煩。是以就想寫個BAT檔案,能夠迅速的更改IP。
是以就花了點時間學了DOS指令,寫了一個菜單式的更改IP位址的小檔案。(因為不是程式員出生,是以下面寫的不是很專業…呵呵 實用能懂就行)
大概的架構:
:head
Echo **** //顯示第一層選擇菜單
If A goto B //選擇執行 注意紅色的必須一樣
goto head //當選了一個沒有的選項時,重新選擇。防止輸錯視窗關閉,小亮點!呵呵..
:B
****** //執行選項B的操作
goto again //執行完後到第二層菜單
:again
Echo****
If C goto head //這個就是回到第一個菜單
If D goto end //結束
goto again //當選了一個沒有的選項時,重新選擇。
:end //結束
echo. & exit
整個程式的架構就這個樣子,接下來就為整個架構加東東了……
Echo off //關閉顯示 這個就是隻顯示echo的指令,那些執行的過程就隐藏了
mode con cols=55 lines=25 //設定DOS視窗大小 執行起來好看點 呵呵
color 0A //字型和背景顔色
cls //清屏
//打個标簽吧!!小小自戀一下……
echo ******************************************************
echo * *
echo * 一鍵IP位址修改器 *
echo * by:Desperadoe *
echo * *
//這裡就是要顯示的選項菜單欄了 我這裡根據自己需要做了本地連接配接和無線的
echo 本地連接配接 IP修改
echo 1、 自動擷取IP位址
echo 2、 修改成112 IP位址,為 172.18.115.251
echo 3、 修改成CiscoLab IP位址,為172.16.145.250
echo 4、 手動輸入IP位址
echo 5、 設定為Google DNS位址
echo 無線網絡連接配接 IP修改
echo a、 自動擷取IP位址
echo b、 修改成112 IP位址,為 172.18.115.252
echo c、 修改成CiscoLab IP位址,為172.16.145.250
echo d、 手動輸入IP位址
echo e、 設定為Google DNS位址
echo f、 Exit
echo. echo.
//上面選擇了就通過下面這個來調用執行 有陰影的字都是根據自己的需要來取個名字,不過這個一定要對應
set sel=
set/p sel=請選擇修改方式:
if "%sel%"=="1" goto auto
if "%sel%"=="2" goto 112
if "%sel%"=="3" goto lab
if "%sel%"=="4" goto manual
if "%sel%"=="5" goto DNS
if "%sel%"=="a" goto Wauto
if "%sel%"=="b" goto W112
if "%sel%"=="c" goto WLab
if "%sel%"=="d" goto Wmanual
if "%sel%"=="e" goto WDNS
if "%sel%"=="f" goto end
goto head
//下面這些就是通過選擇來執行的部分了,不要看這麼多,隻是重複而已!
//大家注意觀察下陰影部分的是要完全對應的,不然執行不了!!
//本地連接配接部分
:auto
cls
color 0e
echo 正在更改IP位址,請稍等......
netsh interface ip set address name="本地連接配接" source=dhcp
echo 正在更改DNS位址,請稍等......
netsh interface ip set dns name="本地連接配接" source=dhcp
echo 更改IP位址完成!
goto again
:112
echo 正在切換為112 本地IP位址,請稍等......
netsh interface ip set address 本地連接配接 static 172.18.115.251 255.255.255.0 172.18.115.254 gwmetric=1
echo 設定本地IP位址成功!
netsh interface ip set dns 本地連接配接 static 218.196.40.8
netsh interface ip add dns 本地連接配接 218.196.40.8
echo 設定DNS伺服器成功!
echo.
echo 已切換為112 本地IP位址。
:lab
echo 正在切換為CiscoLab 本地IP位址,請稍等......
netsh interface ip set address 本地連接配接 static 172.16.145.250 255.255.255.0 172.16.145.254 gwmetric=1
echo 已切換為CiscoLab 本地IP位址。
:manual
color 1F
echo 下面将由你配置本地IP位址,請按提示順序輸入......
set ip_new=
set/p ip_new=請輸入本地IP位址:
set mask_new=
set/p mask_new=請輸入子網路遮罩:
set gw_new=
set/p gw_new=請輸入預設網關:
netsh interface ip set address 本地連接配接 static addr=%ip_new% mask=%mask_new% gateway=%gw_new% gwmetric=1
set dns1=
set/p dns1=請輸入主DNS位址:
netsh interface ip set dns 本地連接配接 static %dns1%
set dns2=
set/p dns2=請輸入備份DNS位址:
netsh interface ip add dns 本地連接配接 %dns2%
echo 本地IP位址配置完成。
:DNS
echo 正在切換為Google DNS位址,請稍等......
netsh interface ip set dns 本地連接配接 static 8.8.8.8
netsh interface ip add dns 本地連接配接 8.8.4.4
echo 已切換為Google DNS位址。
//無線網絡連接配接部分
:Wauto
echo 正在更改無線IP位址,請稍等......
netsh interface ip set address name="無線網絡連接配接" source=dhcp
netsh interface ip set dns name="無線網絡連接配接" source=dhcp
echo 更改無線IP位址完成!
:W112
echo 正在切換為112 無線IP位址,請稍等......
netsh interface ip set address 無線網絡連接配接 static 172.18.115.252 255.255.255.0 172.18.115.254 gwmetric=1
echo 設定無線IP位址成功!
netsh interface ip set dns 無線網絡連接配接 static 218.196.40.8
netsh interface ip add dns 無線網絡連接配接 218.196.40.8
echo 已切換為112 無線IP位址。
:WLab
echo 正在切換為CiscoLab 無線IP位址,請稍等......
netsh interface ip set address 無線網絡連接配接 static 172.16.145.250 255.255.255.0 172.16.145.254 gwmetric=1
echo 已切換為CiscoLab 無線IP位址。
:Wmanual
echo 下面将由你配置無線IP位址,請按提示順序輸入......
set/p ip_new=請輸入無線IP位址:
netsh interface ip set address 無線網絡連接配接 static addr=%ip_new% mask=%mask_new% gateway=%gw_new% gwmetric=1
netsh interface ip set dns 無線網絡連接配接 static %dns1%
netsh interface ip add dns 無線網絡連接配接 %dns2%
echo 無線IP位址配置完成。
:WDNS
netsh interface ip set dns 無線網絡連接配接 static 8.8.8.8
netsh interface ip add dns 無線網絡連接配接 8.8.4.4
echo 設定Google DNS伺服器成功!
echo 已切換為Google DNS位址。goto again
//這裡就是第二個菜單了
color 0a
echo * *
echo * IP 位址修改器 *
echo * by:Desperadoe *
echo 設定完成!請選擇:
echo 1、傳回
echo 2、退出
set/p sel=請輸入1或2:
if "%sel%"=="1" goto head
if "%sel%"=="2" goto end
//結束
:end
整個程式就這麼多,根據自己需要,大家按照那個基本的架構修改,修改的時候一定要細心,很容易出錯的。有什麼建議或者什麼更好的方法的可以留言我。大家一起交流…..呵呵
//原Bat檔案在附件裡面