Продолжить прерванный cp

Можно ли бежать cp снова после того, как это было прервано и заставило это начаться, где это закончилось в прошлый раз (не перезаписывать данные, которые уже скопированы, только копировать то, что еще осталось)

4 ответа

Решение

Это такие случаи, которые научили меня использовать rsync с самого начала. Однако в вашем случае вы можете использовать rsync сейчас. Он будет копировать только новые данные, в том числе, если cp остановился на полпути через большой файл.

Вы можете использовать его как cp, вот так:

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

В случае прерванного cp была рекурсивная копия, вы можете продолжить с rsync, включая опцию --recursive,

пример

Прерванная команда копирования:

cp -r source-directory destination-directory

Давайте предположим, что destination-directory уже существует, так что эта команда копирования создала каталог с именем source-directory в destination-directory, Это может быть возобновлено через:

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

Обратите внимание, что конечные косые черты имеют точное значение в параметрах пути rsync.

В этом случае команда копирования могла получить аргумент source-directory или же source-directory/, это не имеет значения. В команде rsync, однако, это должно быть source-directory без косой черты.

Используйте ключ -u и посмотрите страницу руководства cp.

rsync также является отличным инструментом: справочная страница по адресу -> http://www.manpagez.com/man/1/rsync/

Другие вопросы по тегам