xcopy: move arquivos em vez de copiar?

9

Gostaria de usar xcopy para mover, não copiar arquivos em uma rede com o sinalizador "Verificar". Não consegui encontrar uma opção no xcopy para mover arquivos, existe um xmove que eu possa usar que tenha verify ?

No momento, estou usando xcopy /D /V , mas preciso me livrar dos arquivos na origem somente quando for verificado que um arquivo foi copiado com êxito para o destino.

    
por JBurace 21.10.2014 / 19:40

2 respostas

9

Você deve verificar robocopy , é muito mais poderoso que xcopy . Você pode mover facilmente arquivos com /MOV ou /MOVE .

Para mover somente arquivos (excluir da fonte após a cópia)

robocopy from_folder to_folder files_to_copy /MOV

Para mover arquivos e diretórios (excluir da fonte após a cópia)

robocopy from_folder to_folder files_to_copy /MOVE

link

    
por 21.10.2014 / 20:02
1

Você pode usar um arquivo em lote para executar o comando Xcopy com a verificação, seguido por uma verificação do nível de erro retornado pelo Xcopy para determinar se os arquivos foram copiados com êxito ou não. Se eles fizeram isso, exclua a fonte.

Na documentação do Xcopy :

Exit
code  Description
====  ===========
  0   Files were copied without error.
  1   No files were found to copy.
  2   The user pressed CTRL+C to terminate xcopy.
  4   Initialization error occurred. There is not
      enough memory or disk space, or you entered
      an invalid drive name or invalid syntax on
      the command line.
  5   Disk write error occurred.

Exemplo de lote:

Rem Attempt file copy...
xcopy /D /V %1 %2

Rem Check result code and if it was successful (0), delete the source.
if errorlevel 0 (
    echo Copy completed successfully
    del /Q %1
    exit /B
)

Rem Not Errorlevel 0...
echo Copy failed for some reason.
    
por 21.10.2014 / 19:54