Continua interrotto cp


17

È possibile eseguire di cpnuovo dopo che è stato interrotto e farlo ricominciare l'ultima volta (non sovrascrivere i dati già copiati, solo copiare ciò che è ancora rimasto)?

Risposte:


32

Sono casi come questo che mi hanno insegnato a utilizzare rsyncfin dall'inizio. Tuttavia, nel tuo caso, puoi usare rsync ora. Copierà solo nuovi dati, incluso se cpinterrotto a metà di un file di grandi dimensioni.

Puoi usarlo proprio come cp, in questo modo:

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

3
O --append-verifyper confrontare i checksum alla fine solo per essere sicuri.
Zaz,

7

Utilizzare l'opzione -u e vedere la pagina man di cp.


ma i file sorgente non sono cambiati o altro
Phil

1
il -u è solo per 'update' ... ovvero: non sovrascriverà i file esistenti nella destinazione se sono uguali o più recenti ...
ericslaw

2
Se usi -u, copierà di nuovo lo stesso file di grandi dimensioni. -u aiuta solo se stai cercando di riprendere una copia ricorsiva di grandi dimensioni.
Rory,

7

Nel caso in cui l'interruzione cpfosse una copia ricorsiva, potresti voler riprendere con rsync inclusa l'opzione --recursive.

Esempio

Comando di copia interrotto:

cp -r source-directory destination-directory

Supponiamo che destination-directoryesistesse già, in modo che questo comando di copia abbia creato una directory nominata source-directory all'interno destination-directory . Questo può essere ripreso tramite:

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

Si noti che le barre finali hanno un significato preciso nelle opzioni del percorso rsync.

In questo caso, il comando copy potrebbe aver ottenuto l'argomento source-directoryo source-directory/, non fa differenza. Nel comando rsync, tuttavia, deve essere source-directory senza barra finale .


Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.