====== rsync is an open source utility that provides fast incremental file transfer ======
[[https://debianforum.ru/index.php/topic,18223.0.html|rsync: Копирование директорий на USB Flash]].
rsync -av --delete --update "$HOME/Public/" "/run/media/dragonserw/Ventoy/DragonSerW-iso/" && sync && beep # DragonSerW
Пояснение:
-a (архивный режим): сохраняет права доступа, временные метки, символические ссылки и другие атрибуты файлов.
-v (verbose): выводит подробную информацию о процессе копирования.
--delete: удаляет файлы в целевой директории, которые отсутствуют в исходной директории. Это обеспечивает точное зеркалирование.
--update: не перезаписывает файлы в целевой директории, если они новее, чем файлы в исходной директории. Это позволяет сохранить более новые файлы в целевой директории.
Важные моменты:
Обратите внимание на слэш (/) в конце пути исходной директории ($HOME/Public/). Это означает, что копируется содержимое директории, а не сама директория.
Если вы хотите скопировать саму директорию Public внутрь целевой директории, уберите слэш в конце:
rsync -av --delete --update "$HOME/Public" "/run/media/dragonserw/Ventoy/DragonSerW-iso/"
Пример:
Если в $HOME/Public есть файлы file1.txt и file2.txt, а в /media/dragonserw/Ventoy/DragonSerW-iso уже есть file1.txt (более новая версия) и file3.txt, то после выполнения команды:
* file1.txt в целевой директории останется без изменений (так как он новее).
* file2.txt будет скопирован из исходной директории.
* file3.txt будет удален из целевой директории (так как его нет в исходной директории).
[[terminal|Terminal emulator, bash]].