
【已解決】獲取IP地址信息再更改IP地址批處理最后由 小智BAT 于 -10-14 06:47大家幫忙測試下,如有建議都提出來。代碼已經更新這個看,看看有還有什么問題??
nclick="copycode($('code0'));">復制代碼
- @echo off
- title IP自動改手動批處理。
- color 0a
- ver | find 5.1. > NUL &&goto show51
- ver | find 6.1. > NUL &&goto show61
- :show51
- @echo 當前系統是:[WindowsXP ]
- echo ------------------------
- echo 正在獲取本地連接地址信息:
- set w1=wmic nic where NetConnectionID='本地連接' get Index
- for /f %%a in ('%w1% ^| findstr /b [0-9]') do set n=%%a
- set w2=wmic nicconfig where Index='%n%' get DNSServerSearchOrder^,DefaultIPGateway^,IPAddress^,IPSubnet
- for /f tokens^=1-2delims^={^ %%a in ('%w2% /value^|find .')do set %%a%%b
- echo ============================
- echo,IP地址:%IPAddress%
- echo,子網:%IPSubnet%
- echo,網關:%DefaultIPGateway%
- echo,DNS:%DNSServerSearchOrder%
- echo 正在修改為手動IP地址
- netsh interface ip set address name=本地連接 source=static addr=%IPAddress% mask=%IPSubnet%
- netsh interface ip set address name=本地連接 gateway=%DefaultIPGateway% gwmetric=0
- echo 正在修改DNS為:%DNSServerSearchOrder%和114.114.114.114
- netsh interface ip set dns name=本地連接 source=static addr=%dns%
- netsh interface ip add dns name=本地連接 addr=114.114.114.114
- pause & exit
- :show61
- @echo 當前系統是:[Windows7 ]
- echo ------------------------
- echo 正在獲取本地連接地址信息:
- set w1=wmic nic where NetConnectionID='本地連接' get Index
- for /f %%a in ('%w1% ^| findstr /b [0-9]') do set n=%%a
- set w2=wmic nicconfig where Index='%n%' get DNSServerSearchOrder^,DefaultIPGateway^,IPAddress^,IPSubnet
- for /f tokens^=1-2delims^={^ %%a in ('%w2% /value^|find .')do set %%a%%b
- echo ============================
- echo,IP地址:%IPAddress%
- echo,子網:%IPSubnet%
- echo,網關:%DefaultIPGateway%
- echo,DNS:%DNSServerSearchOrder%
- echo ============================
- goto workdo
- :workdo
- set pattern_包含=^[^.]*.[^.]*.[^.]*.[^.]*$
- set pattern_排除=[^.][^.][^.][^.] [^0-9.] ..
- echo %IPAddress%|findstr %pattern_包含%|findstr /v %pattern_排除%|findstr /v [0-9][0-9][0-9][0-9] [3-9][0-9][0-9] 2[6][0-9] 25[6-9] && goto workip || echo 本地連
- 接網絡沒連接或者網線沒拆好。&goto exitip
- :workip
- echo 正在修改為手動IP地址:%IPAddress% %IPSubnet% %DefaultIPGateway% %DNSServerSearchOrder%
- netsh interface ip set address name=本地連接 source=static addr=%IPAddress% mask=%IPSubnet% gateway=%DefaultIPGateway% gwmetric=1
- echo 正在修改DNS為:114.114.114.114和%DNSServerSearchOrder%
- netsh interface ipv4 set dns name=本地連接 source=static addr=%DNSServerSearchOrder%
- netsh interface ipv4 add dns name=本地連接 addr=114.114.114.114
- echo 修復完成。
- pause & exit
- :exitip
- exit
- pause

