Formatar saída de log [RESOLVIDO]

1. Formatar saída de log [RESOLVIDO]

William Amaral de Souza
Williamm

(usa Linux Mint)

Enviado em 21/08/2013 - 15:27h

Boa tarde, como poderia fazer para formatar ( alinhar ) uma saída de logs, exemplo

como esta é assim:

192.168.1.1 - conectado - 15:14:32
192.168.1.1 - conectado - 15:14:35
192.168.1.1 - conectado - 15:14:37
192.168.1.1 - conectado - 15:14:39
192.168.1.1 - desconectado - 15:15:17
192.168.1.100 - desconectado - 15:15:18
192.168.0.200 - conectado - 15:15:18


e quero que fique assim:


192.168.1.1 - conectado - 15:14:32
192.168.1.1 - conectado - 15:14:35
192.168.1.1 - conectado - 15:14:37
192.168.1.1 - conectado - 15:14:39
192.168.1.1 - desconectado - 15:15:17
192.168.1.100 - desconectado - 15:15:18
192.168.0.200 - conectado - 15:15:18


Obrigado a todos.


  


2. MELHOR RESPOSTA

Fernando
phoemur

(usa Debian)

Enviado em 21/08/2013 - 16:38h

Mais fácil ainda, não precisa de awk:


printf "%15s - %12s - %6s\n" $i conectado `date +%H:%M:%S` >> $log


Ou seja, utilize printf pra gerar o log ao invés de echo

3. Re: Formatar saída de log [RESOLVIDO]

Fernando
phoemur

(usa Debian)

Enviado em 21/08/2013 - 16:25h

awk '{printf "%15s - %12s - %6s\n", $1, $3, $5}' arquivo.log


Vai trocando os números pro formato que ficar melhor pra vc


4. Re: Formatar saída de log [RESOLVIDO]

William Amaral de Souza
Williamm

(usa Linux Mint)

Enviado em 21/08/2013 - 16:35h

phoemur escreveu:

awk '{printf "%15s - %12s - %6s\n", $1, $3, $5}' arquivo.log


Vai trocando os números pro formato que ficar melhor pra vc


Obrigado pela atenção, como posso utilizar sua dica?

o meu echo que gera o log esta assim:

echo "$i - conectado - `date +%H:%M:%S`" >> $log



5. Re: Formatar saída de log [RESOLVIDO]

William Amaral de Souza
Williamm

(usa Linux Mint)

Enviado em 21/08/2013 - 16:40h

phoemur escreveu:

Mas fácil ainda, não precisa de awk:


printf "%15s - %12s - %6s\n" $i conectado `date +%H:%M:%S` >> $log


Ou seja, utilize printf pra gerar o log ao invés de echo


Muito bom cara, obrigado mesmo.


6. Formatar saída de log, on screen

Eder
ronindarktemplar

(usa Arch Linux)

Enviado em 08/07/2015 - 12:01h


O comando "column -t", que efetua a formatação em colunas, no caso do exemplo funcionará perfeitamente, pois o cabeçalho tem que ter o mesmo numero de campos, separados por espaços que as colunas, senão as colunas ficarão embaralhadas.

The command "column -t" is very nice, but the header line must have the same number of arguments, between spaces, otherwise the columns will be scrambled.