简体   繁体   English

使用grep regex从arp表中提取MAC地址

[英]Extracting MAC Address from arp table using grep regex

I am trying to extract MAC address from arp table without but it is returning a empty line. 我试图从arp表中提取MAC地址,但它返回一个空行。

I tried to use the command: 我试着使用命令:

arp -a | grep eth1 | grep '^\A(([0-9a-fA-F]{2}):){5}([0-9a-fA-F]{2})$\z'

The 'arp -a' command return: 'arp -a'命令返回:

? (192.168.36.20) at 80:e0:1d:43:b0:60 [ether] on eth1
? (192.168.0.1) at 34:4b:50:b7:ef:08 [ether] on usb0
? (172.17.140.200) at 10:c3:7b:c4:82:04 [ether] on eth0

Thanks 谢谢

解决了使用:

arp -a | grep eth1 | grep -o -E '([[:xdigit:]]{1,2}:){5}[[:xdigit:]]{1,2}'

A much simpler way using awk : 使用awk更简单的方法:

$ arp | grep eth1 | awk '{print $3}'

See GNU Awk manual for more. 有关更多信息,请参阅GNU Awk手册。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM