Второй день как знаком с Perl. Решаю задачу, в ходе которой понадобилось вытянуть список MAC-адресов из ARP-таблицы. Пока что нашёл такое решение:
$somedata = `arp | grep -E -o '[0-9,aAbBcCdDeEfF]{1,2}(\:[0-9,aAbBcCdDeEfF;]{1,3}){5}'`;
В результате из
localhost arp # arp
Address HWtype HWaddress Flags Mask Iface
192.168.1.24 ether 00:21:91:20:01:0a C eth0
somebody.office.xxx ether 00:02:2a:e1:6f:de C eth0
00:21:91:20:01:0a
00:02:2a:e1:6f:de
Но меня смущает тот факт, что Perl позиционируется в том числе как мощный инструмент для обработки текстовой информации, и поэтому использование внешних утилит не совсем уместное. Если я правильно думаю, то как так же элегантно решить задачу по парсинге результатов arp только средствами Perl?