Continuar abortado cp


17

É possível executar cpnovamente depois que foi interrompido e começar onde terminou da última vez (não sobrescrever dados que já foram copiados, apenas copiar o que ainda resta)?

Respostas:


32

São casos como este que me ensinaram a usar rsyncdesde o início. No entanto, no seu caso, você pode usar o rsync agora. Ele copiará apenas novos dados, inclusive se for cpinterrompido na metade de um arquivo grande.

Você pode usá-lo como cp, assim:

rsync --append /where/your/copying/from /where/you/want/to/copy

3
Ou --append-verifypara comparar somas de verificação no final apenas para ter certeza.
Zaz

7

Use a opção -u e consulte a página de manual do cp.


mas arquivos de origem não mudou nem nada
Phil

11
o -u é para 'update' única ... ou seja: ele não vai substituir os arquivos existentes no destino , se eles são mesmo ou mais recente ...
ericslaw

2
Se você usar -u, ele copiará o mesmo arquivo grande novamente. -u só ajuda se você estiver tentando retomar uma cópia recursiva grande.
Rory

7

No caso do abortado cpera uma cópia recursiva, você pode querer continuar com o rsync, incluindo a opção --recursive.

Exemplo

Comando de cópia abortada:

cp -r source-directory destination-directory

Vamos supor que destination-directoryjá existia, para que este comando de cópia crie um diretório nomeado source-directory dentro destination-directory . Isso pode ser retomado via:

rsync --recursive --append source-directory destination-directory

Observe que as barras à direita têm um significado preciso nas opções de caminho do rsync.

Nesse caso, o comando copy poderia ter recebido o argumento source-directoryou source-directory/, não faz diferença. No comando rsync, no entanto, ele deve ser source-directory sem barra final .


Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.