Захватить конкретную информацию из `ifconfig` с помощью сценария [closed]

Допустим, я запускаю команду ifconfig для моей подключенной сети .

Как заставить сценарий bash использовать эту команду и найти, что идет после inet , netmask и broadcast , и распечатать эти IP-адреса в списке в терминал без отображения команды ifconfig . Поэтому, когда скрипт запускается, он выводит только 3 IP-адреса выбранной сети.

-1
задан 11 July 2017 в 00:17

1 ответ

Здесь используйте следующие сценарии для связывания IP-адресов с inet, netmask, и broadcast строки в выводе ifconfig команда. Обратите внимание, я использую wlp3s0 сетевой интерфейс как пример

для показа адреса inet просто выполняет следующую команду в связанном интерфейсе т.е. заменяют wlp3s0 с названием Вашего интерфейса подключенной сети:

1. inet

ifconfig wlp3s0 | grep -o -e "inet\ addr:\([0-9]\{1,3\}.\)\{3\}.[0-9]\{1,3\}" | grep -o -e "\([0-9]\{1,3\}\.\)\{3\}[0-9]\{1,3\}"

2. сетевая маска

ifconfig wlp3s0 | grep -o -e "Mask:\([0-9]\{1,3\}.\)\{3\}.[0-9]\{1,3\}" | grep -o -e "\([0-9]\{1,3\}\.\)\{3\}[0-9]\{1,3\}"

3. широковещательная передача

ifconfig wlp3s0 | grep -o -e "Bcast:\([0-9]\{1,3\}.\)\{3\}.[0-9]\{1,3\}" | grep -o -e "\([0-9]\{1,3\}\.\)\{3\}[0-9]\{1,3\}"

кроме того, если Вы хотите произвести MAC-адрес интерфейса, используйте следующую команду:

ifconfig wlp3s0 | grep -o -e "HWaddr \([0-9a-f]\{2\}:\)\{5\}[0-9a-f]\{2\}" | grep -o -e "\([0-9a-f]\{2\}:\)\{5\}[0-9a-f]\{2\}"
1
ответ дан 2 November 2019 в 23:36

Другие вопросы по тегам:

Похожие вопросы: