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

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

Re: [shell-script] Adicionando ao final da linha


From: SuSE List
Subject: Re: [shell-script] Adicionando ao final da linha
Date: Tue, 07 Dec 2004 18:00:41 -0200
User-agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.7.2) Gecko/20040803

Que tal algo assim:

msptst2:/home/vinicius/pflog # more teste1.db
abcdef^12345^123^12^1
ghjiklmn^8765432^21390^120^12
abcdef^12345^123^12^1
ghjiklmn^8765432^21390^120^12

msptst2:/home/vinicius/pflog # more teste2.db
abcdef^12345^123^12^1
ghjiklmn^8765432^21390^120^12
msptst2:/home/vinicius/pflog #

msptst2:/home/vinicius/pflog # mkdir new ; for i in *.db ; do cat $i | 
sed -e "s/.$/^2004-11-07/g" > new/$i; done ; cat -vet new/*.db
abcdef^12345^123^12^^2004-11-07$
ghjiklmn^8765432^21390^120^1^2004-11-07$
abcdef^12345^123^12^^2004-11-07$
ghjiklmn^8765432^21390^120^1^2004-11-07$
abcdef^12345^123^12^^2004-11-07$
ghjiklmn^8765432^21390^120^1^2004-11-07$

msptst2:/home/vinicius/pflog #

Tudo em uma única linha!!!

(Estou adorando brincar com shell......eheheh)

[]s

Vinicius

MrBiTs wrote:

>Prezados
> 
>Tendo a seguinte estrutura de dados:
> 
>campo1^campo2^campo3^campo4^campo5
>abcdef^12345^123^12^1
>ghjiklmn^8765432^21390^120^12
> 
>e assim por diante, meu problema é adicionar um sexto campo, de forma que
>tenhamos:
> 
>campo1^campo2^campo3^campo4^campo5^campo6
>abcdef^12345^123^12^1^2004-11-02
>ghjiklmn^8765432^21390^120^12^2004-11-02
> 
> 
>Para tal, desenvolvi o seguinte:
> 
>#!/bin/bash
>cd /diretorio/dos/arquivos/
>mkdir new
>for files in *.db ; do
>count=1
>while read line ; do
>if [ $count == 1 ] ; then
>echo "$line^campo6"
>count=$count+1
>else
>echo "$line^2004-11-02"
>fi
>done < $file > new/$file
>done
>
>
>Isso funcionou, todos os arquivos tiveram a data do processamento (
>2004-11-02 ) e o cabeçalho campo6 adicionados corretamente. Entretanto,
>fiquei pensando se há outra maneira de fazer isso, talvez atraves de um sed
>ou awk. Dicas ?
>
>[]'s
>
>
>
>---------------------------------------------------------------------
>Esta lista não admite a abordagem de outras liguagens de programação, como 
>perl, C etc. Quem insistir em não seguir esta regra será moderado sem prévio 
>aviso.
>---------------------------------------------------------------------
>Sair da lista: address@hidden
>---------------------------------------------------------------------
>Esta lista é moderada de acordo com o previsto em 
>http://www.listas-discussao.cjb.net
>---------------------------------------------------------------------
> 
>Links do Yahoo! Grupos
>
>
>
>
> 
>
>
>
>
>
>  
>



[As partes desta mensagem que não continham texto foram removidas]



reply via email to

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