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

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

Re: [shell-script] Pegar a data do arquivo e jogar diretamente no awk co


From: Julio C. Neves
Subject: Re: [shell-script] Pegar a data do arquivo e jogar diretamente no awk como uma variável
Date: Thu, 4 Dec 2014 10:45:45 -0200

Mande uns 3 registros do seu arquivo.

Abcs,
Julio
@juliobash
P
róximos cursos de Shell
Cidade         Local Período
Rio de Janeiro EDX 09 a 13/03/15
São Paulo 4Linux 24 a 28/11/14
Dou treinamento de Shell em qualquer cidade.
Para mais detalhes, me mande um e-mail.


Em 3 de dezembro de 2014 13:51, Cristiano Amaral address@hidden [shell-script] <address@hidden> escreveu:
 

Dai Fredi, resolvi desse jeito macarrônico :

IFS=" "

while read linha ; do
    awk -v dados=$(awk '{ print $1, $2, $3 }' <<< $linha | xargs -i date --date "{}" +%FT%T) '{ print dados, $8 }' <<< $linha
done < dados.txt

Mas deve ter uma maneira mais limpa para fazer isso....

Em 3 de dezembro de 2014 12:41, Fredi Rolf Bieging address@hidden [shell-script] <address@hidden> escreveu:
 

E aí Cristiano, beleza? :)
Cara, eu faria algo assim:

while read linha
do 
data_original=$(cut -d ' ' -f1-3 <<< $linha)
sed "s/$data_original/$(date -d "$data_original" '+%FT%T')/" <<< $linha
done < dados.txt

2014-12-03 11:45 GMT-02:00 Cristiano Amaral address@hidden [shell-script] <address@hidden>:

 

Beleza Peczenyj, mas no caso preciso pegar a data dentro do arquivo , tentei isso :

awk -v dados=$(awk '{ print $1, $2, $3 }' dados.txt | xargs -i date --date "{}" +%FT%T) '{ print dados, $7 }' dados.txt

Resultado :

awk: 2014-11-25T16:17:01
awk:              ^ syntax error

Não consegui passar disso, alguma ideia ?



Em 2 de dezembro de 2014 15:23, Tiago Peczenyj address@hidden [shell-script] <address@hidden> escreveu:
 

vc deve usar aspas duplas e dentro, executar o comando, por exemplo:

ps aux | awk -v a="`date`" '{print ">" a "<", $2}'

ou

ps aux | awk -v a="$( date )" '{print ">" a "<", $2}'

mais legivel



2014-12-02 18:20 GMT+01:00 Cristiano Amaral address@hidden [shell-script] <address@hidden>:

 

Senhores tenho um arquivo com o seguinte conteúdo :

Nov 25 16:17:01 corp-bbb-exp open: user 11111111111 opened INBOX/Arquivo Remoto/Orcamento
Nov 26 17:17:01 corp-bbb-exp open: user 22222222222 opened INBOX/Antigas
Nov 27 18:17:01 corp-bbb-exp open: user 33333333333 opened INBOX/Arquivo Remoto/Pessoal

Estou tentando formatar a data como FT :

awk -v a=`date --date "Nov 25 16:17:01" +%FT%T` '{ print a, $7}' arquivo.txt


A pergunta é como faço para pegar a data do arquivo e jogar diretamente no awk como uma variável ?




--
Tiago B. Peczenyj
Linux User #405772

http://about.me/peczenyj






reply via email to

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