3

Я использую множество сценариев, в которых используются адреса Mac моих сетевых карт. Есть ли файл, который я могу прочитать, или команда, которую я могу использовать, чтобы ПРОСТО получить адрес Mac? Я не хочу никаких заголовков или чего-то еще, только 1 строка вывода, которая имеет адрес Mac. Я хотел бы установить это как переменную окружения при входе в систему. Я использую Arch Linux x64

2 ответа2

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

Сложнее сделать это проще.

А на самом деле:

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

еще проще и не запускает никакого дополнительного процесса.

0

Это работает для меня. Возможно, можно немного оптимизировать:

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

Я не думаю, что вы можете сильно упростить это из этого. Я сделал strace на ifconfig, и кажется, что вы извлекаете MAC-адрес с помощью ioctl() на сокете, а не из файла /proc.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .