Lanjutkan dibatalkan cp


17

Apakah mungkin untuk menjalankan cplagi setelah dibatalkan dan membuatnya mulai di mana ia berakhir terakhir kali (tidak menimpa data yang sudah disalin, hanya menyalin apa yang masih tersisa)?

Jawaban:


32

Ini kasus seperti ini yang telah mengajarkan saya untuk menggunakan rsyncdari awal. Namun dalam kasus Anda, Anda dapat menggunakan rsync sekarang. Ini hanya akan menyalin data baru, termasuk jika cpdihentikan setengah jalan melalui file besar.

Anda dapat menggunakannya seperti cp, seperti ini:

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

3
Atau --append-verifyuntuk membandingkan checksum pada akhirnya hanya untuk memastikan.
Zaz

7

Gunakan tombol -u, dan lihat halaman manual cp.


tetapi file sumber tidak berubah atau apa pun
Phil

1
-u hanya untuk 'pembaruan' ... yaitu: tidak akan menimpa file yang ada di tujuan jika file tersebut sama atau lebih baru ...
ericslaw

2
Jika Anda menggunakan -u, maka itu akan menyalin file besar yang sama lagi. -u hanya membantu jika Anda mencoba untuk melanjutkan salinan rekursif yang besar.
Rory

7

Jika yang dibatalkan cpadalah salinan rekursif, Anda mungkin ingin melanjutkan dengan rsync termasuk opsi --recursive.

Contoh

Perintah salin dibatalkan:

cp -r source-directory destination-directory

Mari kita asumsikan yang destination-directorysudah ada, sehingga perintah salin ini membuat direktori bernama source-directory dalam destination-directory . Ini dapat dilanjutkan melalui:

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

Perhatikan bahwa trailing slash memiliki makna yang tepat dalam opsi path rsync.

Dalam hal ini, perintah salin bisa saja mendapatkan argumen source-directoryatau source-directory/, itu tidak membuat perbedaan. Dalam perintah rsync, bagaimanapun, itu harus source-directory tanpa trailing slash .


Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.