Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Copia arquivos e diretórios, incluindo subdiretórios.
Para obter exemplos de como usar esse comando, consulte Exemplos.
Sintaxe
xcopy <Source> [<Destination>] [/w] [/p] [/c] [/v] [/q] [/f] [/l] [/g] [/d [:MM-DD-YYYY]] [/u] [/i] [/s [/e]] [/t] [/k] [/r] [/h] [{/a | /m}] [/n] [/o] [/x] [/exclude:FileName1[+[FileName2]][+[FileName3]]] [{/y | /-y}] [/z] [/b] [/j] [/compress]
Parâmetros
Parâmetro | Descrição |
---|---|
<Fonte> | Obrigatório Especifica o local e os nomes dos arquivos que você deseja copiar. Esse parâmetro deve incluir uma unidade ou um caminho. |
[<Destino>] | Especifica o destino dos arquivos que você deseja copiar. Esse parâmetro pode incluir uma letra de unidade e dois-pontos, um nome de diretório, um nome de arquivo ou uma combinação deles. |
/w | Exibe a seguinte mensagem e aguarda sua resposta antes de começar a copiar arquivos: Pressione qualquer tecla para começar a copiar arquivos |
/p | Solicita que você confirme se deseja criar cada arquivo de destino. |
/c | Ignora erros. |
/v | Verifica cada arquivo conforme ele é gravado no arquivo de destino para verificar se os arquivos de destino são idênticos aos arquivos de origem. |
/q | Suprime a exibição de xcopy mensagens. |
/f | Exibe nomes de arquivo de origem e de destino durante a cópia. |
/l | Gera uma lista de arquivos que devem ser copiados, mas não copia ativamente os arquivos. |
/g | Cria arquivos de destino descriptografados quando o destino não dá suporte à criptografia. |
/d [:MM-DD-AAAA] | Copia arquivos de origem alterados somente após a data especificada. Se você não incluir um valor MM-DD-YYYY , xcopy copiará todos os arquivos de origem mais recentes do que os arquivos de destino existentes. Essa opção de linha de comando permite que você atualize os arquivos que foram alterados. |
/u | Copia arquivos da origem que existem somente no destino . |
/eu | Se a origem for um diretório ou contiver curingas e o destino não existir, xcopy pressupõe que o destino especifique um nome de diretório e crie um novo diretório. Em seguida, xcopy copia todos os arquivos especificados no novo diretório. Por padrão, xcopy solicita que você especifique se o destino é um arquivo ou um diretório. |
/s | Copia diretórios e subdiretórios, a menos que estejam vazios. Se você omitir /s, xcopy funcionará em um único diretório. |
/e | Copia todos os subdiretórios, mesmo que estejam vazios. Use /e com as opções de linha de comando /s e /t . |
/t | Copia apenas a estrutura do subdiretório (ou seja, a árvore), não os arquivos. Para copiar diretórios vazios, você deve incluir a opção /e de linha de comando. |
/k | Copia arquivos e retém o atributo somente leitura em arquivos de destino se estiver presente nos arquivos de origem . Por padrão, xcopy remove o atributo somente leitura. |
/r | Copia arquivos somente leitura. |
por hora | Copia arquivos com atributos de arquivo ocultos e do sistema. Por padrão, xcopy não copia arquivos ocultos ou do sistema |
/um | Copia somente arquivos de origem que têm seus atributos de arquivo de arquivo de arquivo definidos. / a não modifica o atributo de arquivo morto do arquivo de origem. Para obter informações sobre como definir o atributo de arquivo morto usando attrib, consulte links relacionados. |
/m | Copia arquivos de origem que têm seus atributos de arquivo de arquivo de arquivo definidos. Ao contrário de /a, /m desativa atributos de arquivo morto nos arquivos especificados na origem. Para obter informações sobre como definir o atributo de arquivo morto usando attrib, consulte links relacionados. |
/n | Cria cópias usando os nomes de diretório ou arquivo curto do NTFS. /n é necessário quando você copia arquivos ou diretórios de um volume NTFS para um volume FAT ou quando a convenção de nomenclatura do sistema de arquivos FAT (ou seja, 8,3 caracteres) é necessária no sistema de arquivos de destino . O sistema de arquivos de destino pode ser FAT ou NTFS. |
/em | Copia informações de DACL (lista de controle de acesso discricionário) e propriedade do arquivo. |
/x | Copia as configurações de auditoria de arquivo e as informações da SACL (lista de controle de acesso do sistema) (implica /o). |
/exclude:Nome_do_Arquivo1[+[Nome_do_Arquivo2]][+[Nome_do_Arquivo3]( )] | Especifica uma lista de arquivos. Pelo menos um arquivo deve ser especificado. Cada arquivo contém cadeias de caracteres de pesquisa com cada cadeia de caracteres em uma linha separada no arquivo. Quando qualquer uma das cadeias de caracteres corresponde a qualquer parte do caminho absoluto do arquivo a ser copiado, esse arquivo é excluído de ser copiado. Por exemplo, especificar o obj de cadeia de caracteres excluirá todos os arquivos abaixo do obj do diretório ou todos os arquivos com a extensão .obj . |
/y | Suprime a solicitação para confirmar que você deseja substituir um arquivo de destino existente. |
/-y | Solicita que você confirme se deseja substituir um arquivo de destino existente. |
/z | Copia em uma rede no modo reinicializável. |
/b | Copia o link simbólico em vez dos arquivos. Esse parâmetro foi introduzido no Windows Vista®. |
/j | Copia arquivos sem buffer. Recomendado para arquivos muito grandes. Esse parâmetro foi adicionado ao Windows Server 2008 R2. |
/comprimir | Solicite compactação de rede durante a transferência de arquivo, quando aplicável. |
/[- ]esparso |
Habilita ou desabilita a retenção do estado esparso dos arquivos durante o processo de cópia. Se ambos os parâmetros forem especificados, as substituições /esparsas/esparsas. |
/noclone | Não tenta bloquear a clonagem como uma otimização. |
/? | Exibe a ajuda no prompt de comando. |
Observações
Usando /z
Se você perder sua conexão durante a fase de cópia (por exemplo, se o servidor ficar offline cortar a conexão), ela será retomada depois que você restabelecer a conexão. /z também exibe o percentual da operação de cópia concluída para cada arquivo.
Usando /y na variável de ambiente COPYCMD.
Você pode usar /y na variável de ambiente COPYCMD. Você pode substituir esse comando usando /-y na linha de comando. Por padrão, você será solicitado a substituir.
Copiando arquivos criptografados
Copiar arquivos criptografados para um volume que não dá suporte a EFS resulta em um erro. Descriptografe os arquivos primeiro ou copie os arquivos para um volume que dá suporte ao EFS.
Anexando arquivos
Para acrescentar arquivos, especifique um único arquivo para o destino, mas vários arquivos para origem (ou seja, usando curingas ou formato file1+file2+file3).
Valor padrão para o destino
Se você omitir o destino, o
xcopy
comando copiará os arquivos para o diretório atual.Especificando se o destino é um arquivo ou diretório
Se o destino não contiver um diretório existente e não terminar com uma barra invertida (), a seguinte mensagem será exibida:
Does <Destination> specify a file name or directory name on the target(F = file, D = directory)?
Pressione F se quiser que o arquivo ou os arquivos sejam copiados para um arquivo. Pressione D se quiser que o arquivo ou os arquivos sejam copiados para um diretório.
Você pode suprimir essa mensagem usando a opção de linha de comando /i , o que faz
xcopy
com que o destino seja um diretório se a origem for mais de um arquivo ou um diretório.Usando o comando para definir o
xcopy
atributo de arquivo morto para arquivos de destinoO
xcopy
comando cria arquivos com o conjunto de atributos de arquivo morto, se esse atributo foi definido ou não no arquivo de origem. Para obter mais informações sobre atributos de arquivo e attrib, consulte Links relacionados.Comparando
xcopy
ediskcopy
Se você tiver um disco que contenha arquivos em subdiretórios e quiser copiá-lo para um disco que tenha um formato diferente, use o
xcopy
comando em vez dediskcopy
. Como odiskcopy
comando copia discos de faixa por faixa, seus discos de origem e de destino devem ter o mesmo formato. Oxcopy
comando não tem esse requisito. Usexcopy
a menos que você precise de uma cópia de imagem de disco completa.Erro de memória insuficiente
Um erro de "memória insuficiente" poderá ocorrer se estiver em execução
xcopy
para copiar um arquivo ou pasta cujo caminho de nome de arquivo seja maior que 255 caracteres.Códigos de saída para
xcopy
Para processar códigos de saída retornados,
xcopy
use o parâmetro ErrorLevel na linha de comando if em um programa em lote. Para obter um exemplo de um programa em lotes que processa códigos de saída usando se, consulte links relacionados. A tabela a seguir lista cada código de saída e uma descrição.Código de saída Descrição 0 Os arquivos foram copiados sem erros. 1 Nenhum arquivo foi encontrado para copiar. 2 O usuário pressionou CTRL+C para terminar xcopy
.4 Erro de inicialização. Não há memória ou espaço em disco suficiente ou você inseriu um nome de unidade inválido ou uma sintaxe inválida na linha de comando. 5 Erro de gravação de disco.
Exemplos
1. Para copiar todos os arquivos e subdiretórios (incluindo quaisquer subdiretórios vazios) da unidade A para a unidade B, digite:
xcopy a: b: /s /e
2. Para incluir qualquer sistema ou arquivos ocultos no exemplo anterior, adicione a opção de linha de comando /h da seguinte maneira:
xcopy a: b: /s /e /h
3. Para atualizar arquivos no diretório \Reports com os arquivos no diretório \Rawdata que foram alterados desde 29 de dezembro de 1993, digite:
xcopy \rawdata \reports /d:12-29-1993
4. Para atualizar todos os arquivos existentes em \Reports no exemplo anterior, independentemente da data, digite:
xcopy \rawdata \reports /u
5. Para obter uma lista dos arquivos a serem copiados pelo comando anterior (ou seja, sem realmente copiar os arquivos), digite:
xcopy \rawdata \reports /d:12-29-1993 /l > xcopy.out
O arquivo xcopy.out lista todos os arquivos que devem ser copiados.
6. Para copiar o diretório \Customer e todos os subdiretórios para o diretório \\Public\Address na unidade de rede H:, mantenha o atributo somente leitura e seja solicitado quando um novo arquivo for criado em H:, digite:
xcopy \customer h:\public\address /s /e /k /p
7. Para emitir o comando anterior, certifique-se de criar xcopy
o diretório \Address se ele não existir e suprimir a mensagem exibida ao criar um novo diretório, adicione a opção de linha de comando /i da seguinte maneira:
xcopy \customer h:\public\address /s /e /k /p /i
8. Você pode criar um programa em lote para executar xcopy
operações e usar o lote se o comando processar o código de saída se ocorrer um erro. Por exemplo, o seguinte programa em lote usa parâmetros substituíveis para os parâmetros de origem xcopy
e destino:
@echo off
rem COPYIT.BAT transfers all files in all subdirectories of
rem the source drive or directory (%1) to the destination
rem drive or directory (%2)
xcopy %1 %2 /s /e
if errorlevel 4 goto lowmemory
if errorlevel 2 goto abort
if errorlevel 0 goto exit
:lowmemory
echo Insufficient memory to copy files or
echo invalid drive or command-line syntax.
goto exit
:abort
echo You pressed CTRL+C to end the copy operation.
goto exit
:exit
Para usar o programa em lote anterior para copiar todos os arquivos no diretório C:\Prgmcode e seus subdiretórios para dirigir B, digite:
copyit c:\prgmcode b:
O interpretador de comando substitui C:\Prgmcode por %1 e B: para %2, em seguida, usa xcopy
com as opções de linha de comando /e/s. Se xcopy
encontrar um erro, o programa em lote lerá o código de saída e irá para o rótulo indicado na instrução IF ERRORLEVEL apropriada e exibirá a mensagem apropriada e sairá do programa em lote.
9. Este exemplo copia todos os diretórios não vazios, além de arquivos com a extensão de arquivo associada após o símbolo de asterisco.
xcopy .\toc*.yml ..\..\Copy-To\ /S /Y
rem Output example.
rem .\d1\toc.yml
rem .\d1\d12\toc.yml
rem .\d2\toc.yml
rem 3 File(s) copied
No exemplo anterior, esse valor de parâmetro de origem específico .\toc*.yml copia os mesmos 3 arquivos mesmo que seus dois caracteres de caminho .\ tenham sido removidos. No entanto, nenhum arquivo seria copiado se o curinga do asterisco fosse removido do parâmetro de origem, tornando-o apenas .\toc.yml.