Каков наилучший способ сравнения двух структур каталогов и удаления посторонних файлов и каталогов в целевом местоположении?
У меня есть небольшое приложение для создания веб-галереи фотографий, которое я разрабатываю. Пользователи добавляют и удаляют изображения, используя FTP. Программное обеспечение для веб-галереи, которое я написал, создает новые эскизы на лету, но не занимается удалением. Что я хотел бы сделать, так это запланировать выполнение командного / bash-скрипта через определенные промежутки времени.
Исходные изображения хранятся /home/gallery/images/и упорядочиваются по альбомам с использованием подкаталогов. Миниатюры кэшируются /home/gallery/thumbs/, используя ту же структуру каталогов и имена файлов, что и каталог изображений.
Я попытался использовать следующее для достижения этой цели:
rsync -r --delete --ignore-existing /home/gallery/images /home/gallery/thumbs
это будет работать нормально, если все миниатюры уже были кэшированы, но нет никакой гарантии, что это произойдет, когда в этом случае в каталоге большого пальца будут скопированы оригинальные полноразмерные изображения.
Как мне лучше всего добиться того, что я пытаюсь сделать?
rmdir?