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

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

Re: [shell-script] script com o log do dhpcd


From: Bruno Tobias Stella
Subject: Re: [shell-script] script com o log do dhpcd
Date: Thu, 25 Nov 2004 10:26:25 -0200

Grande Aurélio !

--- Aurelio Marinho Jargas <address@hidden> escreveu:

> > lease 172.16.10.10 {
> >   starts 2 2004/11/23 12:04:44;
> >   ends 2 2004/11/30 12:04:44;
> >   binding state active;
> >   next binding state free;
> >   hardware ethernet 00:d0:09:fd:96:ea;
> >   uid "\001\000\320\011\375\226\352";
> >   client-hostname "Micro_do_Jose";
> > }
> > 
> >   passo ao script o IP 172.16.10.10 como parâmetro e recebo
> > "Micro_do_Jose".
> 
> a maneira padrão de fazer isso em shell é um loop,
> primeiro identificando a linha com o IP, seta uma flag
> (uma variável que indicará que voce está no registro
> certo), e depois pesca a linha com o nome.
> 
> uma maneira mais esperta é filtrar somente as linhas
> com IP e nome, no log, usando um egrep:
> 
>     egrep 'lease|client-hostname' dhcpd.log
> 
> e depois fica mais fácil extrair a linha de baixo do IP,
> com outro grep por exemplo.

Desculpe a minha ignorância, mas como eu pegaria com um grep a linha debaixo do 
IP ?


 
> ou ainda, um único SED que é pequeno mas exige mais
> conhecimentos para entendê-lo:
> 
>      IP="$1"
>      cat dhcpd.log |
>      sed -n "/^lease $IP {/,/}/{ s/client-hostname //p; }"
> 

Este foi um show !
Absurdamente(para mim), apenas executei a linha acima e funcionou! Mais um 
truque tirado
da manga do Mestre Aurélio.
Aurélio, se não for pedir muito, você poderia explicar só um pouquinho este 
comando do sed?


Mais uma vez agradeço,

Bruno Stella
address@hidden
Setor de Redes - (19) 3031-4165
Secretaria de Informatica
Tribunal Regional do Trabalho da 15a. Regiao



reply via email to

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