ipconfig 获取第一个 mac 地址

ipconfig get first mac address

我正在使用此 cmd 命令获取 machine 的所有 MAC 地址:

ipconfig /all

问题在于它打印了所有信息,但没有提供仅打印 mac 的开关。它还打印许多网络接口的信息。我只对活跃的感兴趣——这大概是第一个。我的下一次尝试是只解析物理地址:

ipconfig /all | findstr "Physical Address"

但这也会打印 Link-本地 IPv6 地址和 IPv4 地址。

我怎样才能从 ipconfig 获得 MAC 地址?我很想拥有一些 grep 功能。是否有在 cmd 中实现的本机正则表达式?

这些命令中的任何一个都将过滤文字 "Physical Address" 字符串:

ipconfig /all | find "Physical Address"

ipconfig /all | findstr /c:"Physical Address"

因为这可能会列出多个 MAC 地址并且第一个不一定是 "active" 请考虑使用 PowerShell:

PS C:\> Get-WmiObject Win32_NetworkAdapterConfiguration -filter "IPEnabled='true'" |select MACAddress                   
MACAddress
----------
xx:xx:xx:xx:xx:xx