Есть ли какой-нибудь возможный способ восстановить изображения JPG за определенный период времени?
Вчера при передаче данных на внешний жесткий диск все данные были потеряны из-за неожиданного сбоя жесткого диска. Я пытался использовать PhotoRec для определенного раздела, он извлек более 50 000 изображений, тем не менее, большинство полученных файлов старше 3-5 месяцев.
Заранее спасибо за помощь.:)
2 ответа
Если в ваших файлах JPG хранятся данные EXIF, это можно легко сделать с помощью
jhead 
Инструмент командной строки для манипулирования данными EXIF и касания метки времени или переименования файла jpg в соответствии с данными EXIF, хранящимися в файле.
jhead -ft unnamed.jpg # to touch the time
jhead -n%Y%m%d-%H%M%S unnamed.jpg # to rename in this format YYYYMMDD-hhmmss
exiv2 
Другой, аналогичный инструмент также будет манипулировать и использовать данные EXIf из других файловых форматов, включая:
Поддерживаются следующие форматы: JPEG, TIFF, PNG, JP2, Adobe DNG, Canon CRW, Canon THM, Nikon NEF, Pentax PEF и XMP. В настоящее время доступна только для чтения поддержка PSD и нескольких форматов RAW на основе TIFF: Canon CR2, Fujifilm RAF, Minolta MRW, Olympus ORF, Sony ARW и Sony SR2. Manpage exiv2
exiv2 rename unnamed.jpg # will rename to YYYYMMDD_hhmmss.jpg
Шотуэлл
Shotwell Photo Manager установлен по умолчанию и может сортировать изображения по данным EXIF:

Я использую sort-pictures из
recoverjpeg инструмент, он красиво сортирует изображения по каталогам дат.
Запуск sort-pictures просканирует текущий каталог на предмет файлов, названных в честь шаблона.
image?????*.jpg(изображение, за которым следует не менее пяти символов, за которыми следует.jpg). Для каждого файла в одном из следующих каталогов будет создана новая жесткая ссылка:
invalidИзображение является недопустимым файлом JFIF.smallРазмер изображения менее 100000 байт.undatedСортировке изображений не удалось определить дату изображения по тегам exif.YYYY-MM-DDКаталог, представляющий дату, когда был сделан снимок.
Установить из universe:
# enable universe repo if not already
sudo add-apt-repository universe
sudo apt update
# install
sudo apt install recoverjpeg
Что-то вроде этого должно сработать:
n=0
# loop jpg-files from recup-dir (the ones starting with `f` are "full" size
for f in recup*/f*.jpg; do
# mv the file to a subdir of the current working dir "./sorted"
# renaming to image??????.jpg
mv "$f" sorted/image$(printf "%06d\n" $n).jpg
# print and increment counter
printf '\r%d' $n;
n=$((n+1))
done
echo
# go into "sorted" directory and run `sort-pictures`
cd sorted && sort-pictures
Тогда у вас есть хорошо отсортированные изображения:-)
Вы можете восстановить все изображения с помощью метода, который вы хотите. После этого вы можете отсортировать их по дате с помощью вашего любимого проводника данных (например, nautilus).