获取网卡mac地址的简单方法

获取网卡mac地址的简单方法

我使用了很多涉及网卡 Mac 地址的脚本。是否有我可以读取的文件或可以用来获取 Mac 地址的命令?我不需要任何标题或任何东西,只需要一行包含 Mac 地址的输出。我想在登录时将其设置为环境变量。我使用 Arch Linux x64

答案1

 VARIABLE="$(cat /sys/class/net/$IFACE/address)"

很难做得更简单。

实际上:

 read -r MACADDRESS < /sys/class/net/$iFACE/address

甚至更简单,并且不需要启动任何额外的流程。

答案2

这对我来说是可行的。可能可以稍微优化一下:

/sbin/ifconfig eth0 | grep -o 'HWaddr  *[0-9A-F:]*' | sed -s 's/HWaddr *//'

我认为你无法通过这种方式简化很多事情。我strace在 ifconfig 上做了一个实验,似乎你使用套接字上的 ioctl() 来提取 MAC 地址,而不是从 /proc 文件中提取。

相关内容