Назад | Перейти на главную страницу

Копировать только файлы целиком

Есть ли способ скопировать каталог из одной файловой системы в другую, но удалить частичный файл, если у нас закончится место на диске в целевой файловой системе?
я искал cp и rsync мануалы но ничего не нашел; Я мог бы сделать это в сценарии оболочки, но хотел бы избежать этого, если возможно.
В настоящее время занимаюсь:

cp -r /source /dest

или

rsync -avr /source /dest

м.

Если вы посмотрите руководство по rsync, вы можете прочитать:

--partial
     By default, rsync will delete any partially transferred file if the transfer is
     interrupted. In some circumstances it is more desirable to keep partially 
     transferred files. Using the --partial option tells rsync to keep the partial file
     which should make a subsequent transfer of the rest of the file much faster.

Это означает, что вам не нужно беспокоиться о частичном переносе.

Вы можете убедиться в --partial-dir=DIR вариант. Затем вы можете удалить все файлы в этом каталоге, если хотите удалить частично переданные файлы.

Лучшим способом было бы проверить свободное место перед запуском копии (с небольшим избыточным пространством).

Обычное поведение cp - удалить неполный файл.