İptal edilen cp'ye devam et


17

cpDurdurulduktan sonra tekrar çalıştırmak ve son kez bittiği yerden başlamasını sağlamak mümkün mü (önceden kopyalanmış verilerin üzerine yazmayın, sadece kalanları kopyalayın)?

Yanıtlar:


32

rsyncBaştan beri bana öğretmeyi öğreten bu gibi durumlar . Ancak sizin durumunuzda, şimdi rsync kullanabilirsiniz. cpBüyük bir dosyanın yarısına kadar durdurulması da dahil olmak üzere yalnızca yeni verileri kopyalar .

Bunu cp gibi kullanabilirsiniz, şöyle:

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

3
Ya --append-verifyda sonunda emin olmak için sağlama toplamlarını karşılaştırmak.
Zaz

7

-U anahtarını kullanın ve cp man sayfasına bakın.


ancak kaynak dosyalar değişmedi ya da hiçbir şey
Phil

1
-u sadece 'güncelleme' içindir ... yani: aynı veya daha yeni olmaları durumunda hedefteki mevcut dosyaların üzerine
yazmaz

2
-U kullanırsanız, aynı büyük dosyayı tekrar kopyalar. -u yalnızca büyük bir özyinelemeli kopyayı sürdürmeye çalışıyorsanız yardımcı olur.
Rory

7

İptal edilenin cpözyinelemeli bir kopyası olması durumunda , seçeneği içeren rsync ile devam etmek isteyebilirsiniz --recursive.

Misal

İptal edilen kopyalama komutu:

cp -r source-directory destination-directory

Bunun destination-directoryzaten var olduğunu varsayalım , böylece bu kopyalama komutu source-directory içinde bir dizin yarattı destination-directory. Bu, şu şekilde devam ettirilebilir:

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

Sondaki eğik çizgilerin rsync yolu seçeneklerinde kesin bir anlamı olduğunu unutmayın.

Bu durumda, copy komutu argümanı almış olabilir source-directoryveya source-directory/fark yaratmaz. Ancak rsync komutunda, source-directory eğik çizgi olmadan olmalıdır .


Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.