Autor Tópico: Mesclar linhas com sed  (Lida 3189 vezes)

Offline lucasbcr

  • Usuário Ubuntu
  • *
  • Mensagens: 15
    • Ver perfil
Mesclar linhas com sed
« Online: 06 de Novembro de 2012, 00:01 »
Tenho alguns milhares de arquivos textos (.txt) e preciso trocar os caracteres de fim de linha (\n) por espaços em branco para juntar todas as linhas de cada arquivo em uma só.
Tentei os seguintes comandos:

for i in *.txt
do
sed -e 's/\\n/ /g' $i > prontos/$i
#ou   sed -e 's/$/ /g' $i > prontos/$i
done

Mas acho que não estão funcionando porque o sed está processando linha a linha e ele não pega o "\n" como sendo parte da linha.

Alguma sugestão?

Offline irtigor

  • Equipe Ubuntu
  • Usuário Ubuntu
  • *****
  • Mensagens: 4.344
  • Delete, delete, delete!
    • Ver perfil
Re: Mesclar linhas com sed
« Resposta #1 Online: 06 de Novembro de 2012, 12:11 »
http://sed.sourceforge.net/sedfaq5.html#s5.10

A solução com tr é bem clara
Código: [Selecionar]
tr '\n' ' ' < entrada.txt > saida.txt

Offline lucasbcr

  • Usuário Ubuntu
  • *
  • Mensagens: 15
    • Ver perfil
Re: Mesclar linhas com sed
« Resposta #2 Online: 13 de Janeiro de 2013, 09:42 »
Muito obrigado!