Copia somente arquivos inteiros

3

Existe alguma maneira de copiar o diretório de um sistema de arquivos para outro, mas remover o arquivo parcial no caso de ficarmos sem espaço em disco no sistema de arquivos de destino?
Eu pesquisei cp e rsync manuais, mas não encontrei nada; Eu poderia fazer isso em um script de shell, mas queria evitá-lo, se possível. Atualmente eu faço:

cp -r /source /dest

ou

rsync -avr /source /dest

m.

    
por mehturt 04.01.2012 / 14:38

2 respostas

4

Se você olhar o manual do rsync, você pode ler:

--partial
     By default, rsync will delete any partially transferred file if the transfer is
     interrupted. In some circumstances it is more desirable to keep partially 
     transferred files. Using the --partial option tells rsync to keep the partial file
     which should make a subsequent transfer of the rest of the file much faster.

Isso significa que você não precisa se preocupar com a transferência parcial.

Você pode ter certeza da opção --partial-dir=DIR . Em seguida, você pode remover todos os arquivos desse diretório se quiser eliminar arquivos parcialmente transferidos.

    
por 04.01.2012 / 14:46
0

A melhor maneira seria verificar o espaço livre antes que a cópia seja iniciada (com um pouco de espaço em excesso).

O comportamento normal do cp é eliminar o arquivo incompleto.

    
por 04.01.2012 / 14:47

Tags