[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [shell-script] Adicionando ao final da linha
From: |
Aurelio Marinho Jargas |
Subject: |
Re: [shell-script] Adicionando ao final da linha |
Date: |
Mon, 6 Dec 2004 13:01:44 -0300 (ART) |
alou mr.
--- MrBiTs <address@hidden> escreveu:
> 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,
> campo1^campo2^campo3^campo4^campo5^campo6
> abcdef^12345^123^12^1^2004-11-02
> ghjiklmn^8765432^21390^120^12^2004-11-02
como já disse o julio aqui na lista, a pergunta não é
se *há* uma maneira de fazer com o sed, mas *qual* delas
você vai querer :)
a mais curta:
sed '1s/$/^campo6/ ; 1!s/$/^2004-11-02/' arquivo
o cifrão representa o fim da linha, e o 1! é um
endereço negado, ou seja, qualquer linha com exceção
da primeira.
falou!
>
> 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 ?
=====
--
Aurelio Marinho Jargas, Curitiba, Conectiva
Funcoes ZZ v4.1111 http://aurelio.net/zz
txt2tags v2.1 http://txt2tags.sf.net/pt
__________________________________________________
Converse com seus amigos em tempo real com o Yahoo! Messenger
http://br.download.yahoo.com/messenger/