国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > BAT > 正文

Windows下通過bat獲取網絡連線實際名稱,加強IP類設置腳本的兼容性

2020-06-09 14:02:08
字體:
來源:轉載
供稿:網友

其中比較難解決的問題就是獲取網絡連線的實際名稱,大部分人使用的IP設置腳本都是將【本地連接】寫死在代碼中,可實際上并不是所有電腦都叫本地連接;比如有的用戶電腦可能升級了網卡驅動,或者更換了網卡,導致網絡連線的名稱變成“本地連接2”,又比如有無聊好事者(某產線的作業員電腦),將網絡連線的名稱各種DIY,我就見過一個修改成"操蛋的青春",瞬間無語!

好了,廢話不多說,直接上菜!


對于網絡連線的實際名稱,可能出現的情況有:
1.網卡更換/驅動升級導致名稱變更,比如本地連接2
2.系統語系不同導致網絡連線名稱也不同,比如簡體叫【本地連線】,而繁體卻叫【區域連線】
3.系統版本不同,導致命令行顯示也不同,比如ipconfig/all,簡體XP中顯示為【Ethernet adapter 本地連接:】,而簡體WIN7顯示卻是【以太網適配器 本地連接:】
4.其他不可預料的問題

Windows下獲取網絡連線實際名稱,加強IP類設置腳本的兼容性   

Windows下獲取網絡連線實際名稱,加強IP類設置腳本的兼容性

那如果要編寫一個通用的IP修改腳本,必須就得考慮到以上1-3條的問題,才能提高兼容性,接近版本/簡繁語系通吃!(英文版暫未考慮)
(PS:以下代碼只為說明獲取名稱,其他一切從簡展示):

一、先給出一個XP下簡繁體通用的獲取連線名稱的代碼

@echo off  for /f "tokens=1,2,3 delims=: " %%i in ('ipconfig/all ^|find /i "Ethernet adapter"') do set netname=%%k netsh interface ip set address name="%netname%" source=static addr=192.168.1.105 mask=255.255.254.0 gateway=192.168.1.1  pause

簡單說明:此代碼通過ipconfig/all獲取連線信息,然后抓取Ethernet adapter之后的名稱,即%%k為實際連線名稱,理論上簡繁體通用。

代碼缺點:
1.不兼容WIN7,win7使用ipconfig/all后,得到的是【乙太網路卡 區域連線:】
2.本地超過一塊網卡的時候應該會出錯(具體未實測)
適用場合:在保證單網卡和XP環境下可用不區分簡繁體使用。

二、來個XP/WIN7/簡繁體通吃的連線名稱獲取代碼(最近才幫維護人員寫的,熱乎著呢!):

rem 以上內容略  for /f tokens^=1^,2^ delims^=^" %%j in ('netsh interface ip show config') do (        if "%%j"=="介面 " (     netsh interface ip set address name="%%k" source=static addr=192.168.1.105 mask=255.255.254.0 gateway=192.168.1.1     )     if "%%j"=="接口 " (     netsh interface ip set address name="%%k" source=static addr=192.168.1.105 mask=255.255.254.0 gateway=192.168.1.1     )  )            
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 长春市| 固安县| 闽清县| 民权县| 河津市| 金门县| 皮山县| 惠安县| 化州市| 凤山市| 青冈县| 合江县| 和平县| 定日县| 龙川县| 土默特右旗| 尼勒克县| 定西市| 中方县| 广德县| 治多县| 麦盖提县| 冕宁县| 成安县| 竹山县| 岫岩| 博兴县| 渭南市| 望奎县| 开平市| 康保县| 齐齐哈尔市| 铅山县| 兖州市| 德阳市| 松江区| 中超| 贵定县| 望谟县| 色达县| 砀山县|