linux - 从 ifconfig 输出中提取 MAC 地址

标签 linux macos bash ifconfig mac-spoofing

我正在编写一个 #!bin/bash shell 脚本来自动化 MAC 欺骗。在我编写的脚本中,我输出了 ifconfig -a | grep HWaddr 相当于两个不同的变量。命令 ifconfig -a | grep HWaddr 返回

eth0  Link encap:Ethernet HWaddr 00:00:00:00:00:00

wlan0 Link uncap: Ethernet HWaddr 00:00:00:00:00:00

但我希望命令返回 只是 wlan0 的 MAC 地址。

最佳答案

尝试:

[root@linux ~]$ /sbin/ifconfig wlan0 | grep -o -E '([[:xdigit:]]{1,2}:){5}[[:xdigit:]]{1,2}'
00:25:90:F0:3F:92

通过将 wlan0 指定为 ifconfig 的第一个参数,您告诉它您只需要有关该特定接口(interface)的信息,因此您应该只返回一行。

grep 命令然后在输出中搜索 MAC 地址,并仅打印匹配的 ifconfig 输出部分。

只是为了你的脚本,你可以尝试 follwong:

ifconfig -a | grep HWaddr | awk '{print $5}'

操作系统

ifconfig en1 | awk '/ether/{print $2}'

关于linux - 从 ifconfig 输出中提取 MAC 地址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29754824/

相关文章:

linux - 使用\1 保留模式 Bash 的一部分

linux - 如何将密码传递给scp?

ruby - 无法使用 rbenv 在 OSX 10.10 GM 3.0 上构建 Ruby 2.1.3

OSX 上的 Java 声音不支持 Port.Info 类型

linux - 添加用户

bash - 如何确定我所在的当前交互式 shell(命令行)

linux - 我如何使这个 awk 命令的真实结果发出像 sendmail 等命令

python - python shell 可以有一些预输入吗?

c - 周期性高内核 CPU 负载?

linux - 如何设置 bashrc bash_profile