Filtro de logs [RESOLVIDO]

1. Filtro de logs [RESOLVIDO]

Alberto de Melo Moraes
kbeto

(usa Debian)

Enviado em 20/08/2009 - 18:00h

Ola a todos.
Preciso ler um arquivo de log e descobrir qual a maior linha do log. Até esta parte eu consigo descobrir o tamanho da linha. com o wc -L,mas com esta informação eu preciso ler novamente esta linha e direcionar para um outro arquivo.
O problema é que em arquivo de exemplo me foi exibido que a linha tinha 808 caracteres. Mas como faço para filtrar somente esta linha. Obs o filtro deve ser pelo tamanho da linha.



  


2. MELHOR RESPOSTA

DAVISON MARCEL PASQUALINI
fdmarp

(usa Debian)

Enviado em 08/10/2009 - 19:46h

Cara, comando comando eu não conheço um que faça isso não, mas um scriptizinho básico ... vai ai!

Ele pega a maior linha e te dá qual é a linha, o tamanho e o conteúdo dela ... ai se quiser mandar para um arquivo é só apontar.


# Script.sh
#------------------------------------
# Localiza maior linha de um arquivo
# Codigo da comunidade vivaolinux
#====================================
#
# Inicializa variáveis
#------------------------
maior_linha="0"
count="0"
# Processa
#------------------------
while read linha
do
count=`expr $count + 1`
tam_linha=`echo $linha | wc -c`
if [ "$tam_linha" -gt "$maior_linha" ]; then
numero="$count"
registro="$linha"
maior_linha="$tam_linha"
fi
done < seu_arquivo
echo "
A maior linha e a numero $numero
com $maior_linha caracteres
----------------------------------
REGISTRO
$registro
----------------------------Fim---"






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts