{ if (/^[A-Za-z0-9]/) { interface=$1; next } else { if (/inet [Aa][d]*r/) { split($2,ip,":") } else { next } } print interface"\t: "ip[2] }
Данная команда является AWK-скриптом, предназначенным для поиска и вывода IP-адресов в тексте. Она проверяет строки на наличие IPv4 или IPv6 адресов и выводит соответствующие адреса для каждого найденного интерфейса.
Что делает скрипт:
1. Проверяет, начинается ли строка с буквы или цифры. Если да, то сохраняет значение в переменную «interface».
2. Если строка содержит «inet» или «inetr», то разбивает второе поле строки (разделенное пробелом) по символу «:» и сохраняет значение в массив «ip».
3. Выводит интерфейс и соответствующий IP-адрес, разделенные табуляцией.
Какой полезной выгоды дает:
Данная команда полезна для получения IP-адресов в тексте, что может быть полезно при анализе сетевых данных или отладке сетевых проблем.
Альтернативы:
Если используется Linux или macOS, можно воспользоваться командой «ifconfig» или «ip addr show» для получения информации об IP-адресах интерфейсов.
Аргументы:
Данная команда не принимает аргументов, она работает со стандартным вводом.