找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 26647|回复: 4

[文本处理] 求救XP批处理获取物理网卡信息问题

[复制链接]
发表于 2018-8-9 12:20:32 | 显示全部楼层 |阅读模式
系统为XP,域内很多机器,想通过一个批处理导出网卡配置信息,但是问题是有的机器装了软件会产生虚拟网卡,比如VPN的虚拟网卡之类的,每次获取的mac地址,网卡名称都有可能会变成虚拟网卡的,这不是我想要的,我只想要物理网卡的信息,这该如何获取到正确的信息呢?
  1. @shift
  2. @ECHO OFF
  3. CLS
  4. color 0e
  5. title 网络配置程序
  6. GOTO MENU
  7. :MENU
  8. ECHO.
  9. ECHO. 9 查询本机网络信息
  10. ECHO.
  11. ECHO. 0 退出修改工具
  12. ECHO.
  13. echo. 请输入选择项目的序号:
  14. set /p ID=
  15. if "%id%"=="1" goto cmd1
  16. if "%id%"=="2" goto cmd2
  17. if "%id%"=="3" goto cmd3
  18. if "%id%"=="4" goto cmd4
  19. if "%id%"=="5" goto cmd5
  20. if "%id%"=="6" goto cmd6
  21. if "%id%"=="7" goto cmd7
  22. if "%id%"=="8" goto cmd8
  23. if "%id%"=="9" goto cmd9
  24. If "%id%"=="0" exit
  25. PAUSE
  26. :cmd9
  27. cls
  28. echo -------------------
  29. echo  查询本机网络信息
  30. echo -------------------
  31. echo.
  32. echo 正在查询中,请稍候...
  33. call :select "ip address" "ip9"
  34. call :select "Physical Address" "mac9"
  35. call :select "Default Gateway" "gateway9"
  36. call :select "DNS Servers" "dns9"
  37. call :select "Description" "netcard9"
  38. call :select "Host Name" "compuname9"
  39. cls
  40. echo -------------------
  41. echo  查询本机网络信息
  42. echo -------------------
  43. echo.
  44. echo.查询完毕
  45. echo -----------------------------------------------------
  46. echo 计算机名:      %compuname9%
  47. echo IP 地 址:      %ip9%
  48. echo MAC地 址:      %mac9%
  49. echo DNS地 址:      %dns9%
  50. echo 网关地址:      %gateway9%
  51. echo 网卡名称:      %netcard9%
  52. echo -----------------------------------------------------
  53. echo 任意键返回主菜单
  54. pause >nul
  55. goto :MENU
  56. :select
  57. for /f "tokens=2 delims=:" %%i in ('ipconfig /all ^| findstr /i /c:%1') do if not "!%~2!" == "" set "%~2=%%i"
复制代码
 楼主| 发表于 2018-8-9 14:17:47 | 显示全部楼层

这句命令谁能帮我解释下,谢谢

for /f "tokens=2 delims=:" %%i in ('ipconfig /all ^| findstr /i /c:%1') do if not "!%~2!" == "" set "%~2=%%i"
 楼主| 发表于 2018-8-9 14:18:31 | 显示全部楼层
%1什么意思
"!%~2!" == ""什么意思
"%~2=%%i"什么意思
发表于 2018-8-9 22:51:10 | 显示全部楼层
call :select "ip address" "ip9"
%1和%2是位置参数,也就是call命令调用:select子函数的时候传过去的参数
%1就是"ip address"
%2就是"ip9"

参考:http://bbs.bathome.net/thread-2782-1-1.html#pid22365
 楼主| 发表于 2018-8-13 14:31:01 | 显示全部楼层
谢谢:):):):)
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-18 16:03 , Processed in 0.017379 second(s), 7 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表