Problemas ao mesclar muitos arquivos de texto lado a lado usando a pasta

1

Eu tenho que mesclar centenas de arquivos .txt lado a lado. Eu tenho tentado usar algumas das perguntas já respondidas nos fóruns, mas enquanto os arquivos se fundem, os arquivos segundo e terceiro (assim por diante) mudam uma linha para baixo toda vez. Eu gostaria que eles fiquem alinhados, todos os arquivos têm o mesmo número de linhas (se não caracteres em cada linha). Meus arquivos são separados por vírgulas e meu objetivo final é fazer com que todos sejam excelentes para processamento de dados.

meus arquivos são

591.txt

CT Analyser, Version: 1.9.3.2 
Date and time,25.07.2014 09:56 
Operator identity,svy557 
Computer name,UT156805 
Computation time,00:08:24
Dataset,591_right__rec_tra_voi 
Location,D:\Pam Mandible Copy1\Right\Region1\

583.txt

CT Analyser, Version: 1.9.3.2
Date and time,31.07.2014 15:14
Operator identity,svy557
Computer name,UT156805
Computation time,00:10:04
Dataset,583_left__rec_tra
Location,D:\Pam Mandible Copy3 Left\Reoriented\

Eu tentei algo como o seguinte:

paste 591.txt 593.txt | column -s $'\t' -t

funde-se assim (o segundo arquivo, uma linha abaixo, em vez de linhas próximas umas das outras):

CT Analyser, Version: 1.9.3.2
                     CT Analyser, Version: 1.9.3.2
Date and time,25.07.2014 09:56
                    Date and time,25.07.2014 09:55
Operator identity,svy557
                          Operator identity,svy557
Computer name,UT156805
                            Computer name,UT156805
Computation time,00:08:24
                         Computation time,00:08:13
Dataset,591_right__rec_tra_voi
                    Dataset,583_right__rec_tra_voi
Location,D:\Pam Mandible Copy1 Right\Region1\
  Location,D:\Pam Mandible Copy3 Right\Region1\

Isso está enlouquecendo por alguns dias e qualquer ajuda seria muito apreciada, eu sou bem nova no UNIX, então estou tentando aprender o suficiente para fazer isso e outros projetos que exigem habilidades similares. Os arquivos atuais têm cerca de 50 linhas e todos parecem assim, se eu tentar fazer mais de um arquivo com algo assim:

paste -d '\n' *.txt > new.txt

Os resultados tornam-se imprevisíveis

 CT Analyser, Version: 1.9.3.2
CT Analyser, Version: 1.9.3.2
CT Analyser, Version: 1.9.3.2
CT Analyser, Version: 1.9.3.2
CT Analyser, Version: 1.9.3.2
                     CT Analyser, Version: 1.9.3.2

Date and time,25.07.2014 09:55
Date and time,25.07.2014 09:55
Date and time,25.07.2014 09:56
Date and time,25.07.2014 09:56
Date and time,25.07.2014 09:56
                    Date and time,25.07.2014 09:55

Operator identity,svy557
Operator identity,svy557
Operator identity,svy557
Operator identity,svy557
Operator identity,svy557
                          Operator identity,svy557

Computer name,UT156805
Computer name,UT156805
Computer name,UT156805
Computer name,UT156805
Computer name,UT156805
                            Computer name,UT156805

Computation time,00:08:13
Computation time,00:08:13
Computation time,00:08:24
Computation time,00:08:24
Computation time,00:08:24
                         Computation time,00:08:13

Dataset,583_right__rec_tra_voi
Dataset,583_right__rec_tra_voi
Dataset,591_right__rec_tra_voi
Dataset,591_right__rec_tra_voi
Dataset,591_right__rec_tra_voi
                    Dataset,583_right__rec_tra_voi

Location,D:\Pam Mandible Copy3 Right\Region1\
Location,D:\Pam Mandible Copy3 Right\Region1\
Location,D:\Pam Mandible Copy1 Right\Region1\
Location,D:\Pam Mandible Copy1 Right\Region1\
Location,D:\Pam Mandible Copy1 Right\Region1\
  Location,D:\Pam Mandible Copy3 Right\Region1\

Obrigado novamente por toda a ajuda

    
por SergioM23 01.11.2016 / 04:46

1 resposta

0

Eu suspeitaria que há espaços à esquerda nessas linhas, e isso está empurrando-o para o redor. Você tentou descarregar o início de um arquivo em octal / hex para ver se é esse o caso?

Em seguida, você pode usar um simples comando sed para corrigir todos os arquivos em um script de shell em loop antes de começar.

    
por 10.07.2017 / 00:02