Запись отсутствующих / неправильных тегов даты на основе FileName в ExifTool? - Фотопедия
1 голос
/ 25 ноября 2017

Я использую Linux Mint и у меня есть около 2000 изображений, которые имеют неверные или отсутствующие теги даты EXIF. Я хотел бы использовать дату, содержащуюся в имени файла, чтобы написать теги. Я потратил несколько часов, пытаясь понять, как это сделать в ExifTool, но, к сожалению, не смог продвинуться очень далеко.

Файлы в формате: ГГГГММДД_ЧЧММСС.jpg. Однако есть несколько повторяющихся имен файлов (однако, разные изображения, поэтому я не могу просто удалить дубликаты) в формате YYYMMDD_HHMMSS (1) .jpg. Наконец, есть несколько изображений, которые были сняты в режиме серийной съемки и имеют формат YYYYMMDD_HHMMSS_001.jpg.

Я знаком с основами Python, поэтому смог привести в порядок некоторые другие проблемы с именами и привести файлы к точке, в которой первые 15 символов каждого имени файла соответствуют одному и тому же формату. Поэтому я надеялся, что смогу использовать только первые 15 символов каждого файла в качестве входных данных для написания тегов. Я думаю, что мне нужно что-то вроде:

exiftool '-AllDates<$Filename...'

... но я не могу понять, как сделать расширенное форматирование , которое должно заканчиваться. Кто-нибудь сможет мне помочь?

Я видел этот вопрос , но в моем случае это не помогло.

1 Ответ

1 голос
/ 25 ноября 2017

Ваша команда в основном правильная, как написано. См. Exiftool FAQ # 5 , 3-й абзац.

Единственное предложение, которое у меня есть, - убрать знак доллара, так как он не понадобится для этой операции.

exiftool '-Alldates<Filename' <DirsOrFiles>

Эта команда создает файлы резервных копий. Добавьте -overwrite_original для подавления создания файлов резервных копий. Добавьте -r, чтобы перейти в подкаталоги.

...