Um cmd de linha de comando ou lote para concatenar vários arquivos

91

Eu tenho 50 arquivos de texto em um diretório.

Existe um método de linha de comando do Windows para concatenar esses arquivos em um único arquivo?

Estou usando o Windows Vista .

Eu não quero digitar o nome de todos os arquivos.

    
por Mirage 22.02.2010 / 02:59

5 respostas

119

I don't want to type the name of all files.

Isso é fácil de ser evitado. Abra um prompt de comando nesta pasta e digite o seguinte comando:

copy /b *.txt newfile.txt

Pressione Enter .

Agora, você terá todos os arquivos de texto nesta pasta ordenados por data que serão mesclados em um único arquivo chamado newfile.txt.

My ultimate aim is to store the contents of each text file in a separate column of an Excel sheet.

Aqui está um tutorial que pode ajudá-lo a alcançar seu "objetivo final":

Mesclar todos os arquivos CSV ou TXT em uma pasta em uma planilha

    
por 22.02.2010 / 03:27
36

Para adicionar uma novaLinha no final de cada arquivo concatenado, use type em vez de copy , da seguinte forma:

type *.txt > newfile.txt
    
por 11.04.2013 / 10:55
30

Supondo que você esteja falando sobre a adição de arquivos de texto, o comando copy pode ser usado para anexá-los:

copy file1+file2+file3 targetfile

Se você tiver muitos arquivos, você pode fazer um loop anexando um arquivo de cada vez.

Para arquivos binários, adicione a opção ' /b ':

copy /b file1+file2+file3 targetfile

Isso pressupõe que você saiba que os arquivos binários com os quais você está trabalhando podem ser anexados em seqüência; se não, você receberá um monte de dados inúteis.

    
por 22.02.2010 / 03:08
8

Execute o seguinte comando no prompt de comando:

for %f in (*.txt) do type "%f" >> output.txt
    
por 10.08.2014 / 10:06
3

O seguinte arquivo .bat anexará todos os arquivos * .for, exceto o chamado XIT.for, em um arquivo vazio denominado MASTER.for

type NUL > MASTER.for
FOR %%G IN (*.for) DO IF NOT "%%G" == "XIT.for" copy /A MASTER.for+"%%G" && echo. >> MASTER.for

:)

    
por 12.05.2014 / 13:52