Board logo

标题: [文本处理] 求救XP批处理获取物理网卡信息问题 [打印本页]

作者: 兔兔    时间: 2018-8-9 12:20     标题: 求救XP批处理获取物理网卡信息问题

系统为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     标题: 这句命令谁能帮我解释下,谢谢

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

%1什么意思
"!%~2!" == ""什么意思
"%~2=%%i"什么意思
作者: Batcher    时间: 2018-8-9 22:51

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

谢谢:):):):)




欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2