Pular para o conteúdo

Inserir texto em cada linha do arquivo [RESOLVIDO]

Responder tópico
  • Denunciar
  • Indicar

1. Inserir texto em cada linha do arquivo [RESOLVIDO]

Enviado em 04/01/2012 - 10:58h

Saudações a todos,

Tenho um arquivo CSV gerado por um script e gostaria de saber como adicionar mais uma informação (a data de hoje por exemplo) ao final de cada linha desse arquivo.

Esse arquivo está sendo copiado por outro através do sed. Há alguma forma de fazer isso alterando esse comando?

sed -n "$VarreArquivo p" Resposta/RespostaPar_MSCs.txt #Extrai a linha indicada por VarreArquivo

Ainda não achei um tutorial claro sobre a utilização do sed. Alguém tem alguma indicação de onde eu posso achar?

Abraços,
Diego Tavares

Responder tópico

2. Re: Inserir texto em cada linha do arquivo [RESOLVIDO]

Enviado em 04/01/2012 - 11:47h

O que eu faria é ler cada linha do arquivo e inserir estas linhas em outro arquivo com a data no final da linha!

3. Re: Inserir texto em cada linha do arquivo [RESOLVIDO]

Enviado em 04/01/2012 - 11:48h

Ok, ñ tem problema em fazer isso. Mas como eu faço isso??? rs

4. Re: Inserir texto em cada linha do arquivo [RESOLVIDO]

Enviado em 04/01/2012 - 12:10h

Eu consegui inserir um texto no final de cada linha através do código:

sed 's/$/&,date/' arquivo

O que eu preciso agora é colocar a função date devidamente formatada dentro do sed. Alguém tem alguma sugestão?? Ou eu vou precisar colocar date numa variável e depois puxar essa variável??

5. Re: Inserir texto em cada linha do arquivo [RESOLVIDO]

Enviado em 04/01/2012 - 12:10h

Só pra resposta nao ir de lambuja, tenta fazer o script pelo menos ler linha a linha do arquivo..depois vou te falando como inserir estes dados em outro arquivo..e assim vamos caminhando!
:-)

6. Re: Inserir texto em cada linha do arquivo [RESOLVIDO]

Enviado em 04/01/2012 - 12:14h

Eu já tenho esse script q lê linha a linha e gera um arquivo na saída:

while [ $VarreArquivo -lt `echo $MSCLinha | cut -d" " -f$VarreString` ]
do
sed -n "$VarreArquivo p" Resposta/RespostaPar_MSCs.txt
(( VarreArquivo++ ))
done > Resposta/Teste_MSC_${MSCNome:$MSCPos:$TamNomeMSC}.txt

A questão agora é inserir a informação no final do arquivo. Acredito que tenha como inserir através do sed que já está escrito, mas é isso q eu ñ estou conseguindo. Isso e também inserir a data através do `date`.

7. Re: Inserir texto em cada linha do arquivo [RESOLVIDO]

Enviado em 04/01/2012 - 12:20h

Eu consegui através do pipe, mas acredito q tenha uma forma mais "fluida". No geral tá funcionando.

while [ $VarreArquivo -lt `echo $MSCLinha | cut -d" " -f$VarreString` ]
do
sed -n "$VarreArquivo p" Resposta/RespostaPar_MSCs.txt | sed 's/$/&,data/'
(( VarreArquivo++ ))
done > Resposta/Teste_MSC_${MSCNome:$MSCPos:$TamNomeMSC}.txt

O q eu ñ descobri ainda é como colocar a função date no comando do sed.

8. Re: Inserir texto em cada linha do arquivo [RESOLVIDO]

Enviado em 04/01/2012 - 12:25h

Bacana, eu fiz de uma forma mais simples:



cat entrada.txt | while read line
do

echo "$line - `date +%d/%m/%Y`" >> saida.txt

done



Veja se é isso!

9. Re: Inserir texto em cada linha do arquivo [RESOLVIDO]

Enviado em 04/01/2012 - 14:05h

Show!!!

Funcionou aqui. Muito obrigado!!

10. Show!

Enviado em 18/09/2013 - 17:12h

To só passando para agradecer o alexandregms valeu mesmo!

11. Valeu...

Enviado em 02/08/2016 - 07:36h

alexandregms escreveu:

Bacana, eu fiz de uma forma mais simples:


Veja se é isso!

cat entrada.txt | while read line
do

echo "$line - `date +%d/%m/%Y`" >> saida.txt

done



Bacana, no meu caso era pra ser no inicio de um arquivo, ou seja funciona de qualquer forma!

Responder tópico

Responder tópico

Entre na sua conta para responder.

Fazer login para responder