Windows: copiando um arquivo que está em processo de gravação?

3

Veja alguns pontos fáceis para alguém:

Se eu emitir um comando como copy * / destination em uma pasta que contém um arquivo que está sendo gravado, o arquivo parcialmente gravado será copiado? Será ignorado? Copiará um erro?

Basicamente eu tenho um script que copia arquivos de uma pasta para um novo local em um agendamento, e pode haver um caso em que um novo arquivo está sendo gravado na pasta de origem quando o script é executado. Eu estou querendo saber quais precauções eu preciso tomar.

Edit: Eu devo mencionar que o arquivo será enviado via SMB para uma pasta compartilhada.

    
por Boden 29.10.2009 / 18:34

2 respostas

2

Ou:

  1. O arquivo será bloqueado e nada acontecerá. Pode falhar seu script se você não tiver tratamento de erro decente.
  2. Uma cópia do arquivo será feita no estado em que se encontrava no momento em que a cópia foi iniciada. Os dados gravados no arquivo após esse instante não estarão no arquivo copiado. Pense nisso como um instantâneo das sortes

Como sempre, teste teste de teste e mova-se de lá.

    
por 29.10.2009 / 18:39
3

O Windows não permite que você faça uma cópia regular do arquivo. Você precisa usar Shadow Copy (também conhecido como VSS). A pesquisa rápida do Google produziu este exemplo .

    
por 29.10.2009 / 18:43

Tags