У нас есть структура папок:
assets/user/YYYY/MM/DD/ID/image.jpg|png|...
и более 8000 пользователей размещены в разное время и с разными идентификаторами.
В этой же папке мы создаем миниатюры 6 разных размеров, например:
assets/user/YYYY/MM/DD/ID/tn_image.jpg|png|...
assets/user/YYYY/MM/DD/ID/250x250_image.jpg|png|...
assets/user/YYYY/MM/DD/ID/600x600_image.jpg|png|...
...
Как я могу удалить все эти версии с измененным размером и так далее?
Я предполагаю, что исходные изображения - самые старые изображения. Вы можете использовать скрипт, который удаляет все файлы новее, чем ... Итак, если исходное изображение старше 31 дня, используйте:
find assets/user/\*/\*/\*/\*/ -mtime -31 -type f -exec rm -rf {} \;
БЫТЬ ОСТОРОЖЕН! Эта строка будет искать во всех папках, поэтому все исходные изображения должны быть одинакового возраста. Если это не так, используйте отдельные папки для каждого. Подобно:
find assets/user/YYYY/MM/DD/ -mtime -31 -type f -exec rm -rf {} \;