shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] pegar ip configurado


From: Paulo Bettega
Subject: Re: [shell-script] pegar ip configurado
Date: Fri, 28 Feb 2014 13:54:11 -0300
User-agent: Mozilla/5.0 (X11; Linux i686; rv:24.0) Gecko/20100101 Thunderbird/24.3.0

Olá Marcelo, uso essa expressão

grep -Eo '((1|2)?[0-9]{1,2}\.){3}(1|2)?[0-9]{1,2}' <<<"$(ifconfig)"

acho que desse jeito fica mais fácil filtrar ips válidos de não-válidos
se for preciso.

Pode virar uma função pra pegar os dados de uma só interface
pega_dados_if() {
sed -n "/$1/,/^$/p" <<<"$(ifconfig)"|egrep -o 
'((1|2)?[0-9]{1,2}\.){3}(1|2)?[0-9]{1,2}'
}


Por enquanto (e provavelmente pra sempre...) só uso ipv4 na minha
rede interna :) expressão regular pra pegar ipv6 deve ser um pesadelo.

Abraços Paulo Bettega


On 28-02-2014 10:56, Marcelo F Andrade wrote:
Olá, gente!

Gostaria, por gentileza, de uma outra dica --talvez mais adequada-- de
como resolver uma tarefa que me pareceu simples: pegar o IP
configurado na interface de rede.

$ ifconfig eth0 | egrep '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}'
inet addr:192.168.0.1 Bcast:192.168.0.255 Mask:255.255.255.0

Como se vê, o padrão do IP casa três vezes nessa linha.

Eu consigo resolver esse problema tranquilamente com um cut ou awk (ou
mesmo um grep -o).

Mas o que gostaria de saber é como seria uma ER para pegar "o valor do
IP que aparece depois de 'inet addr:'".

Grato.

MARCELO F ANDRADE | Belem, Amazonia, Brazil | http://about.me/mfandrade



reply via email to

[Prev in Thread] Current Thread [Next in Thread]