[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re:[shell-script] tail -f
From: |
Edison Ferreira |
Subject: |
Re:[shell-script] tail -f |
Date: |
Sun, 12 Jun 2005 20:31:14 -0000 |
User-agent: |
eGroups-EW/0.82 |
é que eu quero ler o que tem nesse arquivo, já previamente gravado, e
depois continuar monitorando... por isso utilizo o tail.. então qual a
saída... claro que não quero exibir o resultado dos cuts sucessivos,
esse é apenas uma parte do script, que eu simplifiquei para pedir ajuda...
--- Em address@hidden, "MrBiTs" <mrbits@t...> escreveu
> > Pq eu não consigo exibir o conteudo desse comando, pois eu quero usar
> > ele mas continuar lendo.... tem como???
> > #!/bin/sh
> > if [ -e /var/log/iptables ]
> > then
> > LOGIPT=/var/log/iptables
> > for i in $( tail -f -n `wc -l $LOGIPT | cut -f 1 -d \ ` $LOGIPT |
> > cut -f 9 -d ' ' | cut -f 2 -d = ) ]
> > do
> > echo $i
> > done
> > fi
>
> Além de sua pergunta estar confusa e incompleta, ja que vc nao falou
efetivamente o que voce quer fazer, o seu script esta redundante e
utilizando comandos incorretamente. Aos finais de semana, a minha bola
de cristal descansa, mas eu vou tentar apontar seus erros e problemas:
>
> tail -f le um arquivo enquanto ele continua sendo incrementado. É
por isso que voce diz que "ele continua lendo". É bom para acompanhar
"on the fly" o que o arquivo LOGIPT esta recebendo. Até onde entendi
vc quer fazer um tail no LOGIPT de tantas quantas forem suas linhas,
ja que wc -l retorna o numero de linhas que LOGIPT possui. Fazer um
tail -n na quantidade total de linhas do arquivo é o mesmo que fazer
um cat nele. O comando tail deveria ser usado para ler as n ultimas
linhas de um arquivo, assim como o comando head deveria ser usado para
ler as n primeiras linhas do arquivo.
>
> Pq vc nao faz simplesmente:
>
> cat /var/log/iptables | cut -f 9 -d ' ' | cut -f 2 -d =
>
> Também aconselho voce a ler mais atentamente a man page do tail e
executar cada uma de suas opcoes separadamente, para voce entender o
que cada uma faz.
>
>
> [As partes desta mensagem que não continham texto foram removidas]