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

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

Re: [shell-script] Edição e ordenação por data em arquivos Log


From: ®i©
Subject: Re: [shell-script] Edição e ordenação por data em arquivos Log
Date: Tue, 6 Dec 2011 15:22:04 -0200

Pessoal segui a dica do Jimmy (Valeu Jimmy), e cheguei neste script:

cat *www.log|awk -v A="" 'OFS=" " {A=$4} {print A, $1, $2, $3, $4, $5, $6,
$7, $8, $9, $10, $11, $12, $13, $14, $15, $16, $17, $18, $19, $20, $21,
$22, $23, $24, $25, $26, $27, $28, $29, $30, $31, $32, $33, $34, $35}'|sort
>> juventude.log

E com a ajuda do MrBits (Valeu Bits), cheguei neste script:
echo [04/Dec/2011:06:19:21| tr -d '[/:'| date +%s

Como posso integrar os 2 scripts, substituindo o {A=$4} do script #1 pelo
script #2?
Algo do tipo:  {A=$(echo $4| tr -d '[/:'| date +%s)}

Tentei fazer o exemplo acima, mas sempre dá erro, não consegui proteger o
sub-shell.

Aguardo + ajuda da Lista. E todas as idéias são bem vindas.

Abraço

Em 5 de dezembro de 2011 18:16, jimmy <address@hidden> escreveu:

> **
>
>
> Saudações Ricardo,
>
> On Mon, Dec 05, 2011 at 03:25:56PM -0200, ®i©@®ÐØ wrote:
> [...]
>
> > Tenho alguns arquivos de log do apache com datas concorrentes, e registro
> > de acessos também concorrentes, que tratam da mesma URL.
> >
> > Preciso filtrar os acessos pela data/hora e editar as entradas,
> > acrescentando a nova composição da URL.
> >
> > Quanto a edição das entradas está tranquilo, consigo fazer numa boa com o
> > vim ou sed, a questão é ordenar os logs pelo timestamp de requisição.
> >
> > Os arquivos estão neste formato abaixo e, preciso ordenar os
> > seus conteúdos pela data subsequente ao IP:
> >
> [...]
>
> >
> > Em conversa PVT com o MrBits, cheguei ao script abaixo com sua ajuda, mas
> > não me atende completamente, pois preciso que o arquivos permaneça no
> mesmo
> > formato original, e o timestamp da requisição está na 2ª coluna.
> >
> > :(
> >
> > segue script:
> > #awk '{print $4}' teste.log|tr -d '[/:'| while read a; do date -s $a +%s
> 2>
> > /dev/null; done|sort
>
> Faça em três passos:
>
> 1. Crie uma coluna extra no início de cada registro (em memória ou
> direto no arquivo) com a data convertida em timestamp.
>
> 2. Ordene seu arquivo normalmente
>
> 3. Remova a coluna extra.
>
> --
> "Não manejo bem as palavras
> Mas manipulo bem as strings."
> ------------------------------
> http://tecnoveneno.blogspot.com
>
>  
>


[As partes desta mensagem que não continham texto foram removidas]



reply via email to

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