Eu tenho uma solução de trabalho. Colou as linhas no Excel e as exportou como arquivo de texto, em vez de um arquivo XLS.
Eu preciso mesclar duas listas muito grandes juntas.
File1.txt
File2.txt
Output.txt
Como posso fazer isso no Windows?
Eu tenho uma solução de trabalho. Colou as linhas no Excel e as exportou como arquivo de texto, em vez de um arquivo XLS.
Se não houver muitos dados, você poderá fazer isso com algo como o MS Office ou o LibreOffice. Carregue os dois arquivos de texto, recorte e cole-os em colunas diferentes em uma planilha (Col A para o arquivo 1, col b para o arquivo 2) e recorte e cole (texto especial, bruto) em um documento de texto.
Não é bonito, mas funcionará com algum trabalho manual de sua parte.
Você pode fazer isso com o utilitário de linha de comando paste
que vem com meu shell Hamilton C . Se isso é uma coisa de uma só vez, você ficará feliz com a versão gratuita da minha shell C. Divulgação completa: sou o autor.
paste -d 176 C% cat File1.txt
Washington|
Ohio|
Dublin|
London|
Milan|
177 C% cat File2.txt
Greg
Tom
Paul
Sharon
Bill
178 C% paste -d 179 C% \cygwin\bin\paste -d paste -d 176 C% cat File1.txt
Washington|
Ohio|
Dublin|
London|
Milan|
177 C% cat File2.txt
Greg
Tom
Paul
Sharon
Bill
178 C% paste -d 179 C% \cygwin\bin\paste -d %pre% File1.txt File2.txt
Gregington|
Tomo|
Paulin|
Sharon|
Billn|
File1.txt File2.txt
Washington|Greg
Ohio|Tom
Dublin|Paul
London|Sharon
Milan|Bill
File1.txt File2.txt > Output.txt
File1.txt File2.txt
Gregington|
Tomo|
Paulin|
Sharon|
Billn|
File1.txt File2.txt
Washington|Greg
Ohio|Tom
Dublin|Paul
London|Sharon
Milan|Bill
File1.txt File2.txt > Output.txt
Veja o que parece nos seus dados:
%pre% O Cygwin também inclui um paste
, mas para usar esse, você precisa garantir que todas as linhas terminem com apenas uma nova linha ( \n
), estilo Unix, não uma combinação de linha de retorno de linha de retorno ( \r\n
) no estilo Windows ou você obterá isso:
(O Cygwin paste
trata o \r
como um caractere comum. Na tela, ele move o cursor para o início da linha, sobrescrevendo o que estava lá.)
linha de comando, var 1:
powershell $f1=gc File1.txt;$f2=gc File2.txt;for($i=0;$i-lt$f1.length;$i++){$f1[$i]+$f2[$i]}>Output.txt
linha de comando, var 2:
powershell $f1=gc File1.txt;$f2=gc File2.txt;for($i=0;$i-lt$f1.length;++$i){$f1[$i]+$f2[$i]^>^>Output.txt}
paste-d.ps1
$f1=gc File1.txt;$f2=gc File2.txt;for($i=0;$i-lt$f1.length;++$i){$f1[$i]+$f2[$i]>>Output.txt}
Tags windows-7