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

[系统相关] BAT脚本怎样获取多个MAC地址方法

[复制链接]
发表于 2015-1-16 14:03:37 | 显示全部楼层 |阅读模式
请问我要怎么改这个命令才能令输出结果为:网卡名称+MAC地址,网卡数量不确定,但大于等于1。
如:本地连接MAC地址:aa-aa-aa-aa-aa-aa
      无线连接MAC地址:bb-bb-bb-bb-bb-bb
@for /f "tokens=2 delims=:" %%f in ('@ipconfig /all^|findstr "..-..-..-..-..-.."') do @(echo 本机MAC地址为:%%f&pause)
发表于 2015-1-16 15:10:01 | 显示全部楼层
  1. wmic nic get NetConnectionID,MACAddress /value > a.txt
复制代码
 楼主| 发表于 2015-1-16 16:26:04 | 显示全部楼层
回复 2# DAIC


    虽然可以显示MAC地址出来,但是这个跟IPconfig/all比起来差不多啊,能再优化下么?输入内容行数等于网卡数。
发表于 2015-1-16 21:22:24 | 显示全部楼层
DAIC 发表于 2015-1-16 15:10
  1. @echo off
  2. wmic nic where "NetConnectionId!=NULL and MacAddress!=NULL" get "NetConnectionID","MacAddress" | find /i /v "MacAddress" >"%tmp%\$"
  3. for /f "tokens=1,2 delims= " %%a in ('type "%tmp%\$"') do (
  4.   echo 网络连接: [%%b]    MAC 地址: [%%a]
  5. )
  6. pause
复制代码
结果:
  1. 网络连接: [lan]    MAC 地址: [08:00:27:6E:08:9B]
  2. 网络连接: [无线网络连接]    MAC 地址: [00:87:C2:30:76:E5]
复制代码
发表于 2015-1-17 06:44:13 | 显示全部楼层
结果:
yu2n 发表于 2015-1-16 21:22


win7 64系统下,单网卡测试如下结果?
发表于 2015-1-17 07:31:35 | 显示全部楼层
回复 5# ygqiang
我在XP双网卡下完成测试。并没有在 Win7 x64 测试。

何不把结果发上来?
  1. wmic nic where "NetConnectionId!=NULL and MacAddress!=NULL" get "NetConnectionID","MacAddress"
复制代码
发表于 2015-1-17 12:27:50 | 显示全部楼层
回复  ygqiang
我在XP双网卡下完成测试。并没有在 Win7 x64 测试。

何不把结果发上来?
yu2n 发表于 2015-1-17 07:31



    上面就是win7 64系统下,单网卡的测试结果。

你这个代码,测试如下:
发表于 2015-1-17 13:07:24 | 显示全部楼层
回复 7# ygqiang

以下代码通过 win7 x64 测试:
  1. @echo off
  2. wmic nic where "NetConnectionId!=NULL and MacAddress!=NULL" get "NetConnectionID","MacAddress" | findstr "[^]" | findstr /i /v "^Mac.." >"%tmp%\$"
  3. for /f "tokens=1,2 delims= " %%a in ('type "%tmp%\$"') do (
  4.   echo 网络连接: [%%b]    MAC 地址: [%%a]
  5. )
  6. pause
复制代码

评分

参与人数 1技术 +1 收起 理由
树怪熊 + 1 感谢给帖子标题标注[已解决]字样

查看全部评分

发表于 2015-1-18 07:47:03 | 显示全部楼层
回复  ygqiang

以下代码通过 win7 x64 测试:
yu2n 发表于 2015-1-17 13:07



    win7 64系统下,单网卡的测试结果正确。
 楼主| 发表于 2015-1-20 14:09:37 | 显示全部楼层
回复 8# yu2n


    GOOD,测试了一下,WIN7 64位和XP 32位都能正常使用,Thank you
发表于 2015-1-20 15:37:49 | 显示全部楼层
回复  yu2n


    GOOD,测试了一下,WIN7 64位和XP 32位都能正常使用,Thank you
树怪熊 发表于 2015-1-20 14:09


BAT获取多个MAC地址

这代码,有啥用处呢?
 楼主| 发表于 2015-1-20 16:00:48 | 显示全部楼层
回复 11# ygqiang


   发给现场维护人员查看本机或用户MAC地址方便我们做运营商维护,话说,查看IP(IP、掩码、网关、DNS服务器、DHCP服务器)的,你会吗?
发表于 2015-1-20 16:59:30 | 显示全部楼层
回复  ygqiang


   发给现场维护人员查看本机或用户MAC地址方便我们做运营商维护,话说,查看IP(IP、 ...
树怪熊 发表于 2015-1-20 16:00
  1. @ECHO OFF&Setlocal EnableDelayedExpansion
  2. set _Name=计算机名----&set _Domain=工作组------&set _IPAddress=IP地址------
  3. set _IPSubnet=子网掩码----&set _DefaultIPGateway=网关--------&set _DNSServerSearchOrder=DNS---------
  4. FOR /F "tokens=*" %%A IN ('WMIC Path Win32_ComputerSystem Get Domain^,Name /Value 2^>Nul') DO (
  5.     FOR /F "tokens=*" %%i in ("%%A") do set %%i
  6. )
  7. FOR /F "tokens=*" %%A IN ('WMIC NICConfig WHERE "IPEnabled=TRUE" GET DefaultIPGateway^,Description^,DNSServerSearchOrder^,IPAddress^,IPSubnet /value 2^>Nul') DO (
  8.    FOR /F "tokens=*" %%i in ("%%A") do set %%i
  9. )

  10. for %%i in (Name Domain IPAddress IPSubnet DefaultIPGateway DNSServerSearchOrder) do (
  11.     set %%i=!%%i:{=!
  12.     set %%i=!%%i:}=!
  13.     set %%i=!%%i:"=!
  14.     echo !_%%i!: !%%i:,=  !  
  15. )

  16. ping 127.0.0.1 -n 5 >nul 2>nul
  17. ECHO.                            Press any key to exit...
  18. PAUSE >Nul
  19. cls
  20. exit
复制代码
 楼主| 发表于 2015-1-21 09:50:28 | 显示全部楼层
回复 13# ygqiang

    我使用的是WIN 7 64位的,使用本地连接和无线连接,代码只能显示无线连接的IP,而且显示IPV6的ip,如果能显示成:
    本地连接:
    IP地址:*.*.*.*
    子网掩码:*.*.*.*
    默认网关:*.*.*.*
    DNS服务器:*.*.*.*
    DHCP服务器:*.*.*.*(非DHCP自动获取的,则不显示)
   
   无线连接:
   IP地址:*.*.*.*
    子网掩码:*.*.*.*
    默认网关:*.*.*.*
    DNS服务器:*.*.*.*
    DHCP服务器:*.*.*.*(非DHCP自动获取的,则不显示)
  

那就完美了。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-19 20:18 , Processed in 0.019049 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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