juntar arquivos por coluna índice [RESOLVIDO]

1. juntar arquivos por coluna índice [RESOLVIDO]

va
franzo

(usa Outra)

Enviado em 16/10/2019 - 07:19h

Olá, estou usando join, no entanto está ocorrendo uma quebre de linha!
a.txt
1 3469
10 3266
100 4182
1000 4021

b.txt
1 -0.26728575
10 -0.44471464
100 -0.62911468
1000 -0.52905756

join a.txt b.txt > ab.txt

ab.txt (está quebrando a linha)
1 3469
-0.26728575
10 3266
-0.44471464
100 4182
-0.62911468
1000 4021
-0.52905756


  


2. Re: juntar arquivos por coluna índice

Ryuk Shinigami
Ryuk

(usa Nenhuma)

Enviado em 16/10/2019 - 09:57h

Aqui o comando funciona normal:

$ cat a.txt b.txt 
1 3469
10 3266
100 4182
1000 4021
1 -0.26728575
10 -0.44471464
100 -0.62911468
1000 -0.52905756

$ join a.txt b.txt
1 3469 -0.26728575
10 3266 -0.44471464
100 4182 -0.62911468
1000 4021 -0.52905756

Talvez no seu caso esteja tendo problema com o tipo de "final de linha" (CRLF) dos arquivos.
Se os arquivos vem do Windows (CRLF) converta-os para o formato Unix (LF) com dos2unix.


3. Re: juntar arquivos por coluna índice [RESOLVIDO]

Marcelo Oliver
msoliver

(usa Debian)

Enviado em 16/10/2019 - 18:58h


franzo escreveu:

Olá, estou usando join, no entanto está ocorrendo uma quebre de linha!
a.txt
1 3469
10 3266
100 4182
1000 4021

b.txt
1 -0.26728575
10 -0.44471464
100 -0.62911468
1000 -0.52905756

join a.txt b.txt > ab.txt

ab.txt (está quebrando a linha)
1 3469
-0.26728575
10 3266
-0.44471464
100 4182
-0.62911468
1000 4021
-0.52905756

Boa noite.
Segue sugestáo:
paste a.txt b.txt
1 3469 1 -0.26728575
10 3266 10 -0.44471464
100 4182100 -0.62911468
1000 4021000 -0.52905756

* Arquivos terminados com "CRLF"
file a.txt
a.txt: ASCII text, with CRLF line terminators

Se terminarem com o formato linux, faça
paste -d" " a.txt b.txt 

Importante: echo -e "$(lynx --dump goo.gl/a9KeFc|sed -nr '/^[ ]+Se/,/dou.$/p')"
Att.: Marcelo Oliver


4. juntar arquivos por coluna índice

va
franzo

(usa Outra)

Enviado em 17/10/2019 - 15:34h

como trabalho com maquina virtual, precisava corrigir o final de linha...
antes de executar o join, os dois arquivos passaram por esse "filtro" de fim de linha:
$ tr -s '\r' '\n' < arq.txt > novo_arq.txt
que encontrei em: https://www.vivaolinux.com.br/dica/Solucao-para-arquivos-com-%5EM-no-final-de-cada-linha-1






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts