Перенос всех разрозненных фото в единую папку с сортировкой по годам.
Перенос всех разрозненных фото в единую папку с сортировкой по годам
Что вы получите:
- Один «домашний архив», где каждое изображение находится в папке, соответствующей году его создания.
- Умение быстро собрать файлы из разных источников (смартфон, облако, USB‑накопитель) без потери качества.
- Автоматический процесс, который можно запустить один раз и забыть о «потерянных» снимках.
1. Почему сортировка по годам важна?
Представьте, что ваш фотоархив — это библиотека. Если книги (фото) лежат в случайном порядке, поиск нужного тома займет часы. Годовая папка работает как полка с меткой: вы сразу знаете, где искать снимки с отпуска 2022 года, а где — семейные праздники 2019 года. Кроме того, система резервного копирования (автопилот) проще «понимает» структуру, если она предсказуема.
2. Подготовка: что собрать и где искать
| Источник | Тип файлов | Где обычно находятся | Как быстро открыть |
|---|---|---|---|
| Смартфон | JPEG, HEIC | Папка DCIM |
Подключить кабель или использовать Wi‑Fi‑передачу |
| Облачные сервисы | JPEG, PNG, RAW | Google Photos, Яндекс.Диск, iCloud | Скачивание через веб‑интерфейс или клиент |
| USB‑накопитель / SD‑карт | Любой | Папка Pictures или корневая |
Подключить к ПК, открыть в проводнике |
| Старый жёсткий диск | JPEG, PNG | Любая пользовательская папка | Подключить к SATA‑адаптеру, смонтировать |
Совет: создайте временную папку
~/TempPhotos(илиC:\TempPhotos) и соберите туда всё «сырье». Это позволит работать в одном месте и избежать случайных перемещений.
# Пример для macOS / Linux
mkdir -p ~/TempPhotos
3. Инструменты, которые понадобятся
| Инструмент | Что делает | Почему удобно |
|---|---|---|
| File Explorer / Finder | Ручный поиск и копирование | Не требует установки |
| PowerShell (Windows) / Bash (macOS, Linux) | Автоматизация перемещения | Позволяет работать с тысячами файлов за секунды |
| ExifTool | Чтение метаданных (дата съёмки) | Точная сортировка даже если имя файла не содержит дату |
| FreeFileSync (опционально) | Синхронизация с резервным хранилищем | Графический интерфейс, поддержка копирования только новых файлов |
Важно: ExifTool – бесплатный, кроссплатформенный и работает в командной строке. Скачайте с официального сайта, установите, и вы сможете извлечь дату съёмки из любого JPEG/HEIC‑файла.
# Установка в Ubuntu
sudo apt-get install exiftool
4. Алгоритм переноса и сортировки
4.1. Сбор всех файлов в одну папку
- Копировать с смартфона – используйте проводник или приложение типа «Android File Transfer».
- Скачать из облака – выберите «Скачать всё» в нужной папке.
- Скопировать с USB/SD – просто перетащите содержимое в
TempPhotos.
Проверка: откройте папку и убедитесь, что количество файлов соответствует ожидаемому (можно посмотреть свойства папки).
4.2. Создание структуры «Год/Месяц»
Мы будем использовать ExifTool для получения даты съёмки и mkdir/mv для создания папок и перемещения файлов.
# Переходим в папку с фото
cd ~/TempPhotos
# Пример команд для Bash (Linux/macOS)
for f in *.{jpg,JPG,jpeg,JPEG,heic,HEIC,png,PNG}; do
# Получаем дату в формате YYYY-MM-DD
date=$(exiftool -d "%Y-%m-%d" -DateTimeOriginal -s3 "$f")
# Если дата не найдена, используем дату изменения файла
if [ -z "$date" ]; then
date=$(date -r "$f" +"%Y-%m-%d")
fi
year=${date:0:4}
month=${date:5:2}
# Создаём папку Год/Месяц, если её нет
mkdir -p "$year/$month"
# Перемещаем файл
mv "$f" "$year/$month/"
done
Что происходит:
exiftool -d "%Y-%m-%d" -DateTimeOriginalвытаскивает дату съёмки из метаданных.- Если метаданные отсутствуют, берём дату изменения файла (
date -r). - Папка создаётся в виде
2022/07(год/месяц).
Аналогия: представьте, что каждый файл – это письмо, а дата‑это его марка отправления. Мы сортируем письма в ящики по годам и месяцам, как почтовый сотрудник.
4.3. Объединение всех годовых папок в один «архив»
# Создаём конечную папку
mkdir -p ~/PhotosArchive
# Перемещаем все годовые папки
mv */* ~/PhotosArchive/
После выполнения у вас будет структура:
PhotosArchive/
├─ 2018/
│ ├─ 01/
│ ├─ 02/
│ └─ …
├─ 2019/
│ ├─ 01/
│ └─ …
└─ 2022/
├─ 07/
└─ …
4.4. Проверка целостности
# Считаем количество файлов в исходной и конечной папках
orig=$(find ~/TempPhotos -type f | wc -l)
final=$(find ~/PhotosArchive -type f | wc -l)
if [ "$orig" -eq "$final" ]; then
echo "✅ Все $orig файлов успешно перенесены."
else
echo "⚠️ Ошибка: в исходной папке $orig файлов, а в конечной $final."
fi
5. Автоматизация: один клик в будущем
Создайте скрипт sort_photos.sh (Linux/macOS) или sort_photos.ps1 (PowerShell) и поместите его в удобную папку. При следующем подключении нового устройства просто запустите скрипт – он выполнит все шаги автоматически.
Пример скрипта для Windows PowerShell
# Путь к временной папке
$Temp = "C:\TempPhotos"
# Путь к архиву
$Archive = "D:\PhotosArchive"
# Создаём папку, если её нет
if (-not (Test-Path $Temp)) { New-Item -ItemType Directory -Path $Temp }
# Копируем новые файлы (пример: из USB)
Copy-Item "E:\DCIM\*.*" -Destination $Temp -Recurse -Force
# Сортируем по годам
Get-ChildItem $Temp -File | ForEach-Object {
$date = (Get-ItemProperty $_.FullName).CreationTime
$year = $date.Year
$month = $date.ToString("MM")
$dest = Join-Path $Archive "$year\$month"
if (-not (Test-Path $dest)) { New-Item -ItemType Directory -Path $dest }
Move-Item $_.FullName $dest
}
Write-Host "✅ Сортировка завершена."
Подсказка: добавьте в Планировщик задач (Windows) или
cron(Linux/macOS) запуск скрипта каждый вечер – ваш «автопилот» будет работать без вашего участия.
6. Как защитить архив от потери
- Резервное копирование – используйте облачный сервис (например, VDSina rel="nofollow") или внешний жёсткий диск.
- Контроль целостности – создайте хеш‑суммы
sha256для каждой папки и храните их в отдельном файле. - Версионность – если вы часто добавляете новые фото, храните только «инкрементальные» копии (только новые файлы).
# Пример создания контрольных сумм
find ~/PhotosArchive -type f -exec sha256sum {} + > ~/PhotosArchive/checksums.txt
7. Часто задаваемые вопросы
| Вопрос | Краткий ответ |
|---|---|
| Что делать, если у фото нет EXIF‑даты? | Скрипт автоматически использует дату изменения файла. Если и её нет, можно задать «год» вручную, переименовав файл. |
| Можно ли сортировать по событию, а не по году? | Да, но для этого потребуется добавить метки вручную (теги) или использовать машинное обучение для распознавания контента – это уже отдельный модуль. |
| Как ускорить процесс при 10 000+ файлах? | Запускайте скрипт на SSD, а также отключите индексацию в папке TempPhotos во время работы. |
Практика для закрепления
- Соберите 30‑50 фотографий из разных источников (смартфон, облако, USB) в одну временную папку. Запустите предложенный Bash‑скрипт и проверьте, что каждая фотография оказалась в папке
Год/Месяц. - Смоделируйте «потерянную» дату: возьмите один файл, удалите у него EXIF‑дату (команда
exiftool -AllDates= file.jpg). Запустите скрипт снова и отметьте, в какую папку попал файл. Что произошло? - Создайте хеш‑контроль: выполните
sha256sumдля всех файлов в архиве, сохраните результат вchecksums.txt. Затем случайно удалите один файл и проверьте, как быстро вы обнаружите несоответствие. - Автоматический запуск: настройте
cron(Linux/macOS) или Планировщик задач (Windows) так, чтобы скрипт запускался каждый вечер в 23:00. Сделайте скриншот расписания и опишите, какие действия вы выполнили. - Проверьте резервную копию: скопируйте папку
PhotosArchiveна облачный сервис (например, VDSina) и затем восстановите её на другом компьютере. Сравните количество файлов до и после восстановления.
Поздравляем! После выполнения практических заданий вы сможете без труда собирать разрозненные фотографии, упорядочивать их по годам и защищать от потери. Теперь ваш цифровой сейф готов к работе в автоматическом режиме. 🚀
Акции в супермаркетах Екатеринбург
Ann: Как Живут Американские Девушки
Chatroulette
Как настроить резервное копирование для PostgreSQL с помощью Barman
Как сопровождать свой бизнес в Москве: полное руководство
Как создать полную копию данных с помощью Duplicati
Как выбрать лучший инструмент резервного копирования для вашей организации
Конечно, вот 50 различных заголовков на тему погоды в Омске:
Кухня с современным дизайном в Екатеринбурге
Лайфхак: как сжать резервные копии для экономии места
Легкая и непромокаемая детская одежда
Лучшие практики для резервного копирования в облачных сервисах
Общайся с друзьями в русском рулетке-чате!
"Обзор игр для iOS: что стоит попробовать в октябре 2023"
Огромные скидки с промокодами.
Ошибки при резервном копировании данных и как их устранить
Основы резервного копирования данных: как это работает
Погода в Москве: На каждый день
Преимущества Жидких Обоев Для Вашего Дома
Проблемы с архивами данных и как их устранить
Профилактика грибковых инфекций на ногтях и стопах
Регистрация залога в Реестре: Процесс и шаги
Решения для резервного копирования данных от Commvault
Решения для резервного копирования данных от Veeam
Российский VDS-сервер с криптоплатежами
Рулетка в видеочате: Опыт пользователей
Сравнение локальных и облачных решений резервного копирования
Юридический журнал: Права женщин и гендерные аспекты
Защита сервера баз данных MySQL/MariaDB через fail2ban

