Как синхронизировать каталоги с разной структурой, используя rsync (или другую программу)
Кто-нибудь из вас знает, как выполнить следующую задачу: Предположим, у вас есть два дерева каталогов, которые я назову source и target. Они могут иметь совершенно другую структуру, но могут содержать много дубликатов файлов.
Примером может служить структурированная коллекция фотографий с одной стороны (место назначения) и просто каталог tmp, в который вы выгружаете все с камеры с другой (источник).
Возможно, некоторые из этих файлов уже находятся в дереве структурированных каталогов. Я хотел бы rsync от источника к цели, чтобы были скопированы только файлы из источника, которые не находятся в месте назначения в любом месте.
2 ответа
Попробуйте fdupes :
fdupes - это программа, написанная Адрианом Лопесом для сканирования каталогов на наличие дубликатов, с возможностью перечислять, удалять или заменять файлы с помощью жестких ссылок, указывающих на дубликат. Сначала сравниваются размеры файлов и подписи MD5, а затем выполняется побайтовая проверка для проверки.
Эта запись в Википедии также содержит список похожих программ.
Так как ваш пример описывает фотографии; Adobe Lightroom делает именно это. Он может импортировать изображения в свою структуру каталогов, игнорируя при этом дубликаты. Если вы хотите эту функцию для других типов документов, вам нужно другое решение.