Copiando todos os arquivos de várias pastas para uma única pasta

3

Tenho cerca de 65000 arquivos em 3.000 pastas em c:\foo\root (ou seja, c:\foo\root\folder1 , c:\foo\root\folder2 etc). Eu quero copiar todos esses arquivos para uma única pasta c:\All\ .

Eu tentei o Robocopy, mas ele apenas faz uma cópia completa (diretórios incluídos). Se durante o processo de cópia ele encontrar arquivos com o mesmo nome, eu preciso renomear o novo como temp(2).file ou similar, não apenas ignorá-lo ou sobrescrevê-lo.

Alguém sabe como fazer isso com um arquivo de lote / prompt de comando? Até mesmo alguns C # seriam ótimos.

    
por Alex 28.05.2011 / 07:56

1 resposta

1

Não pensando claramente em ATM, então este é um método de round-about ...

Se você fosse arquivar a árvore (usar um método sem compactação seria mais rápido), você poderia trabalhar de duas maneiras. Arquivar a árvore (assim subdiretórios incluídos) & extrair com um 'E' (Extrair) ao invés de um 'X' (arquivos eXtract com caminho completo), os arquivos extraídos seriam colocados em um único diretório. Outra maneira de fazer o mesmo seria na criação de arquivos, para dizer "excluir caminhos de nomes". Em seguida, o arquivo criado seria estéril de caminhos, ou seja, todos os arquivos armazenados em um único diretório no arquivo morto, portanto, quando extraídos, eles também seriam extraídos dessa maneira. (Pensando que o primeiro método faz mais sentido).

(o ARJ pode fazer isso. Você acha que o 7z & RAR & ZIP também pode funcionar?)

"Flatten" era uma palavra que eu estava tentando pensar antes. E com isso, um programa de backup / sincronização provavelmente pode ser configurado para "achatar" uma estrutura de diretório.

Então, outros pensamentos ... Tar & DD? Talvez isso ajude os outros a encontrar uma resposta melhor que eu não esteja pensando em ATM.

(Faz muito tempo desde que eu usei Tar, então eu posso sair da base, mas algo da natureza de ...)

 tar -cvf c:/foo/roo | tar -xvf -

Um arquivador & backup / sincronizador deve ser capaz de lidar com qualquer dups de forma automatizada.
ARJ pode. Não sabe sobre alcatrão?

    
por 28.05.2011 / 08:26

Tags