Проблему решил использованием команды rsync в терминале:
rsync -av --ignore-existing --progress "/Volumes/SSD-MAX/Films/" "/Volumes/Files/Films/"
Описание:
rsync: Запускает утилиту rsync.
-a (archive) - рекурсивное копирование и сохранение большинства атрибутов файлов.
-v (verbose) - подробный вывод процесса копирования.
--ignore-existing: пропускает файлы, которые уже существуют в целевой директории.
--progress: показывает прогресс копирования для каждого файла.
"/Volumes/SSD-MAX/Films/": исходная директория для копирования.
"/Volumes/Files/Films/": целевая директория для копирования.
Что делает эта команда:
Сканирует исходную директорию (/Volumes/SSD-MAX/Films/) на наличие файлов и подкаталогов.
Копирует файлы и подкаталоги из исходной директории в целевую директорию (/Volumes/Files/Films/), сохраняя атрибуты файлов.
Пропускает уже существующие файлы в целевой директории, чтобы избежать их перезаписи.
Показывает прогресс копирования каждого файла, помогая отслеживать статус операции.
П.С.
Можно добавлять различные условия, например, исключить из копирования папки, или наоборот, исключить файлы и скопировать только папки. Дополнительные условия можно найти без труда в интернете.
rsync -av --ignore-existing --progress --exclude '*/' "/Volumes/SSD-MAX/Films/" "/Volumes/Files/Films/"
Пояснение:
--exclude '*/': исключает все подпапки из копирования, копируются только файлы из корневой папки /Volumes/SSD-MAX/Films/.
rsync -av --ignore-existing --progress --exclude '*/.*' --exclude '*' "/Volumes/SSD-MAX/Films/" "/Volumes/Files/Films/"
Пояснение:
--exclude '*/.*': исключает скрытые файлы в любых подпапках.
--exclude '*': исключает все файлы в корневой папке и подпапках.
Но так как rsync по умолчанию включает папки и их содержимое, он скопирует только папки и их содержимое, игнорируя файлы, которые находятся в корневой папке и в подпапках.
Чтобы прервать процесс 'Control+C'