Случайно был убит раздел с архивом фотографий, после восстановления получилась куча подкаталогов с файлами. На части файлов правильно восстановились даты. Решил на первом этапе сортировки раскидать файлы по годам. Самому было лень думать попросил ChartGPT накидать скрипт на bash. Получил сразу рабочую версию. Исходный и конечный каталоги указываются прямо с скрипте. #!/bin/bash source_dir="/Volumes/ExDrive/PHOTO_OLD" target_dir="/Volumes/ExDrive/PHOTO_NEW" # Создаем целевой каталог, если он не существует mkdir -p "$target_dir" # Перебираем все файлы в исходном каталоге find "$source_dir" -type f | while read -r file_path; do # Получаем год создания файла creation_year=$(stat -f "%Sm" -t "%Y" "$file_path") # Создаем целевой каталог для этого года year_dir="$target_dir/$creation_year" mkdir -p "$year_dir" # Получаем имя файла без расширения file_name=$(basename "$file_path") file_name_no_ext="${file_name%.*}" file_ext="${file_name##*.}" # Генерируем новое уникальное имя файла new_file_name="$file_name_no_ext-$(date +%s).$file_ext" # Полный путь нового файла new_file_path="$year_dir/$new_file_name" echo $file_path "->" $new_file_path # Перемещаем файл в соответствующий каталог с новым именем mv "$file_path" "$new_file_path" done echo "Файлы перемещены успешно."
1 год назад