Qual é o melhor comando a ser usado para alterar um registro de data e hora para uma data legível quando 'está cortando um arquivo de log?

2

Eu tenho um programa que registra assim:

1324218770.7644 INFO, etc

Qual é o melhor programa de shell do Linux para redirecionar os timestamps para um formato legível como Sun 18 Dec 2011 15:32:50 CET?

Eu posso canalizar assim através

| cut -f 1 -d\   | awk '{print strftime("%c",$1)}'

apenas para os timestamps, mas como faço para manter o resto da linha?

    
por Keith 18.12.2011 / 15:37

2 respostas

2

apenas substitua $1 e, em seguida, imprima toda a linha

$ echo '1324218770.7644 INFO etc' | awk '{$1=strftime("%c", $1); print}'
    
por 18.12.2011 / 16:29
2

Eu suponho que você deseja que a data seja alterada em linha, imprimindo o restante da linha também. Tente substituir o campo 1 pela saída de strftime() .

$ echo "1234218770.7644 INFO etc' | awk '{$1=strftime("%c", $1); print}'
Mon 09 Feb 2009 05:32:50 PM EST INFO etc
    
por 18.12.2011 / 16:32