xcopy exclui a pasta de destino e copia 0 arquivos

3

Estou tentando gravar um arquivo em lotes para fazer backup dos arquivos armazenados localmente em uma unidade de rede. Algumas pastas estão sendo copiadas com sucesso, mas outras não; em vez disso, a pasta de destino está sendo excluída quando o comando é executado.

Trabalhando como esperado (copia todos os arquivos para a pasta de destino):

XCOPY /Y "C:\APPS\lse_jboss-4.2.3.GA-1.1\server\default\deploy\lse_datasources-esl_sourcesdedonnees" "H:\My Documents\RESTORE\Data sources"
XCOPY /Y "%AllUsersProfile%\Desktop" "H:\My Documents\RESTORE\Desktop - Global"
XCOPY /Y "%UserProfile%\Desktop" "H:\My Documents\RESTORE\Desktop - mwa700"
XCOPY /Y "%UserProfile%\Favorites" "H:\My Documents\RESTORE\Favorites"
XCOPY /Y "%UserProfile%\Application Data\Microsoft\Templates" "H:\My Documents\RESTORE\Office templates"

Não funciona como esperado (copia 0 arquivos e exclui a pasta de destino):

XCOPY /Y "%UserProfile%\java_libraries" "H:\My Documents\RESTORE\java_libraries"
XCOPY /Y "%UserProfile%\workspaces" "H:\My Documents\RESTORE\workspace"

Existem conteúdos ou propriedades de qualquer pasta que possam explicar esse comportamento?

    
por Matt 14.12.2011 / 16:03

3 respostas

3

Sim. Por padrão, xcopy copia apenas os arquivos, não os diretórios. Portanto, se seus diretórios de origem contiverem apenas outros subdiretórios, ele não copiará nada. Para garantir que você também copie directores, use o sinalizador /E para copiar directores e subdirectores (incluindo os vazios) ou /S para ignorar os diretórios vazios.

xcopy /Y /E "src" "dest"

Use também /I para assumir que o destino é um diretório se mais de um arquivo for copiado.

xcopy /Y /E /I "src" "dest"

Para mais ajuda, use

xcopy /?
    
por 03.05.2012 / 14:51
1

Não sei se essa é uma resposta que funciona para você, mas usei um comando xcopy para copiar toda a pasta C: para um local de backup em outro dispositivo de disco (chame-a de pasta E: \ A). Depois que a cópia foi concluída com sucesso, a pasta E: \ A desapareceu do Explorer!

Ao mover o dispositivo em E: para outro computador, pude ver que o xcopy tinha configurado os atributos S e H (System e Hidden) de E: \ A, fazendo com que ele desaparecesse. Esses atributos foram, talvez corretamente, copiados da pasta C: \ para a pasta E: \ A.

Eu usei o comando attrib para restaurar esses dois atributos e agora tudo está bem. E: \ A contém as pastas e arquivos que foram copiados de C:.

    
por 13.11.2016 / 00:26
0

Tente usar o nome de arquivo dos formatado para Documents and Settings, ou use a variável de comando% userprofile% path.

A única diferença entre suas duas instruções acima é que não há espaços na origem no script de trabalho e há espaços no caminho do script que não funciona.

Use o comando% userprofile% path primeiro, é mais fácil e suportado por todos os sistemas operacionais MS.

    
por 14.12.2011 / 16:15