У меня большая коллекция файлов raw-фото. На большинстве из них я изменил данные Exif для дат и часовых поясов. Теперь я хочу синхронизировать эти изменения с удаленным местоположением.
Я пробовал использовать rsync
. Но по умолчанию rsync
отправляет весь файл вместо небольшой измененной части. Если я принудительно rsync
использую дельта-передачу с помощью --no-whole-file
опции, это даже медленнее, чем отправка всего файла.
Как можно синхронизировать с удаленным хранилищем только данные Exif, если остальные файлы не тронуты?
решение1
На основе того факта, что вы используете изображения RAW, вы можете установить информацию EXIF в XMP
файле (по одному на изображение), а затем перенести эти побочные файлы в целевое хранилище. Что-то вроде этого может помочь вам извлечь EXIF и сохранить его в XMP:
find /path -type f -name "*.CR2" |while read name; do exiftool -tagsfromfile $name ${name%.*}.xmp; done
а затем синхронизировать только XMP-файлы с удаленным местоположением.
Вы можете добавить это, чтобы быть уверенным в извлечении всей информации:
exiftool -tagsfromfile $name -all:all ${name%.*}.xmp