Мне интересно, как я могу запросить IP-адрес с помощью sed, и он покажет имя интерфейса, которое его использует.Найти сетевой интерфейс по IP-адресу - Linux/Bash
Например ..
ipconfig -a | grep 10.0.0.10
Я бы ожидать, что она вернется с ETH0
Мне интересно, как я могу запросить IP-адрес с помощью sed, и он покажет имя интерфейса, которое его использует.Найти сетевой интерфейс по IP-адресу - Linux/Bash
Например ..
ipconfig -a | grep 10.0.0.10
Я бы ожидать, что она вернется с ETH0
Вы должны использовать этот COMAND:
ifconfig | grep -B1 "inet addr:10.0.0.10" | awk '$1!="inet" && $1!="--" {print $1}'
Надежда эта помощь!
Я не уверен, как это поможет, если OP не сможет найти то, что было после использования старого старого grep 10.0.0.10, а затем добавить к строке, чтобы найти ее еще не найдет. – theruss
вы можете объяснить больше? что такое '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' ', ' –
OP = оригинальный плакат, и btw Thanh, это ТОЧНО, что я искал, спасибо :) – TonyW
Если вы хотите использовать специальное решение sed, вы можете попробовать это. Его трудно усвоить, как это работает, но, наконец, эта комбинация работает.
ifconfig | sed -n '/addr:10.0.0.10/{g;H;p};H;x' | awk '{print $1}'
Если вы хотите, чтобы принять его в качестве аргумента с помощью использования сценария «$ 1» или так вместо этого, если 10.0.0.10.
Sed руководство для справки: http://www.gnu.org/software/sed/manual/sed.html#tail
ifconfig | grep -B1 10.0.0.10 | grep -o "^\w*"
Обратите внимание на '' ipconfig' не может быть установлен, вместо этого используется 'ip' команды (' внутрибрюшинно addr' конкретно) systemd' иницилизации ОС –
Для начала это 'ifconfig',' ipconfig' - это команда DOS (я предполагаю, что это была опечатка). Итак, каков результат 'ifconfig -a' сам по себе? Есть ли сетевой адаптер в вашей системе с IP-адресом «10.0.0.10»? – theruss