Чи є безкоштовна програма для (пакетної) зміни дати фотофайлу, щоб вона відповідала EXIF?


39

Я хочу вказати каталог і змусити програмне забезпечення знайти всі фотографії в каталозі та його підкаталогах, і якщо вони містять дату / час EXIF, вона встановлює часову позначку файлової системи, щоб вона відповідала EXIF.


Звичайно, сьогодні я б поставив це запитання щодо рекомендацій щодо програмного забезпечення - тут я отримав кілька чудових відповідей
Mawg

Відповіді:


46

Це зворотне значення Чи є якесь програмне забезпечення, яке встановлюватиме дати EXIF ​​на основі дати модифікації файлу? , і я впевнений, що всі перераховані там програми будуть застосовуватися.

голова

З них, для цього дуже простого завдання, jhead - це моя пропозиція. Наприклад, команда

jhead -ft *.jpg

встановлює купу файлів, щоб часова марка файлу відповідала EXIF.

jhead з find, для проходження підкаталогів

Для виконання рекурсії в підкаталогах ви можете комбінувати її з findкомандою, доступною в Linux / Unix / Mac (або Cygwin для Windows):

find -name '*.jpg' -exec jhead -ft {} +

Або знайти когось із *.JPG *.JPEG *.jpg *.jpeg ...вас також можна спробувати

find -iname '*.jp*g' -exec jhead -ft {} +

Ви також можете використовувати find, щоб просто показати всі файли, які були б ... знайдені, не виконуючи жодної іншої команди (наприклад, jhead):

find -iname '*.jp*g'

Інші інструменти

Інші утиліти, такі як ExifTool або Exiv2, набагато здатніші, але ціною складності. Я ніколи не можу згадати правильні варіанти зробити що- небудь із цим і доводиться щоразу переглядати документацію, але jhead -ftлегко запам'ятовується мнемонічним "часом виправлення".

ExifTool

Просто для повноти картини , хоча, я зробив вигляд в документації, і з ExifTool , зробіть наступне:

exiftool -r '-DateTimeOriginal>FileModifyDate' directoryname

(Видаліть, -rякщо ви не хочете рекурсії, і якщо ви це зробите, ви можете також надати список файлів або підстановку замість directoryname.) І будьте обережні з цитатами - якщо ви запускаєте це в Windows, ви хочете "замість '.

Exiv2

З Exiv2 :

exiv2 -T rename *.jpg

Будьте уважні, що Exiv2 з малих літер -t(або без жодного -T) Exiv2 також перейменовано файл на нове ім’я на основі часової позначки, що може бути дуже заплутано. Exiv2 також не робить рекурсії.


2
Ви маєте рацію, це навпаки, але нескінченно корисніше :)
Itai

jhead дуже корисний для цього - І для багатьох інших маніпуляцій з файлами jpg. Будьте обережні при використанні - це надзвичайно потужний інструмент, який може призвести до певної кількості хаосу при неправильному використанні. Я рекомендую використовувати його в пакетному файлі, щоб ви завжди виконували те, що плануєте, і попередньо тестуючи результат на тестовому файлі, встановленому спочатку.
Рассел Макмахон

+1, але я нагородив себе відповіддю ;-) Просто так, щоб інші в майбутньому могли знайти спосіб зробити саме те, про що я попросив ...
Mawg

@olibre Так, це буде працювати на Linux / Unix або Mac.
mattdm

Я помітив, що деякі веб-переглядачі зображень (діаспори) представляють зображення лише в порядку назви файлів (не в часі зміни файлів). Нарешті, я використовую часову позначку EXIF, щоб встановити час файлу І для префіксації імені файлу. Я використовую команду find -name '[0-9][0-9]*' -o -iname '*.jp*g' -type f -exec jhead -ft -n%Y%m%d_%H%M%S_%f {} +. Пояснення: -name '[0-9][0-9]*'щоб запобігти перейменуванню файлів, які вже мають префікс дати ( '[0-9][0-9]враховувати роки та місяці). -iname '*.jp*g'можна пропустити, оскільки jheadобробляє лише підтримувані файли (лише файли JPEG). %fщоб зберегти оригінальне ім'я файлу.
олібре

12

Irfanview і jhead обидва будуть робити те, що ти хочеш.
Обидва безкоштовно.
Посилання на обидва нижче.
jhead - керований командним рядком або може викликатися іншими процесами.
Версію Irfanview можна викликати з командного рядка або внутрішньо в партії або у файлі на основі файлу.

Приклад нижче для Irfanview показує, як скопіювати в будь-якому напрямку:


Ірфанв'ю

Дозволяє змінити графічний інтерфейс або командний рядок партії або за передачею дати / часу файлу з EXIF ​​у файл специфікації або навпаки (без інших змін, якщо це потрібно).

Джерело: Безкоштовно від www.irfanview.com

Це набагато простіше і швидше на практиці після кількох застосувань, ніж це показано нижче. наприклад,
для перетворення дати / часу одного файлу в значення EXIF ​​потрібні
Shift-J, Alt-F, Enter.
Бачачи, чому перше кілька разів займає більше часу.

Для цього потрібно створити пакет файлів SOUNDS-комплексу для вивчення - Для
цього потрібно: T, Ctrl-A, Alt-F, J, Enter, (Alt-F), Enter
(або: T, Ctrl-A, Shift-J, Введіть) (дає менше варіантів),
але насправді це майже інтуїтивно зрозуміло після невеликого використання - меню орієнтують вас спочатку до формування мозкового шляху.

GUI, на файл

  Options, JPG lossless rotation  (Shift-J)
    Select "Apply original EXIF date/time to new file"
        Consider also selecting other options

введіть тут опис зображення

GUI, один або багато файлів (через перегляд мініатюр)

Open Thumbnails view ('File, Thumbnails' or 'T' from Window view
Select images to change EXIF data of 
    usually all in folder -> Ctrl-A
Then: File, 'JPG lossless operations'
    (1) Change EXIF date/time
      "Change EXIF date/time"
        Options are offered to set Date/time to specific setting
        or to move all times back/forwards by selected DHMS amount 
              calculator provided to check result is as desired.                 
     (2) Transfer EXIF date / time to file saved date time
          "Lossless rotation with selected files"  [Shift-J]
          then, as for single file version above
              Select "Apply original EXIF date/time to new file"

введіть тут опис зображення

З командного рядка - це "поворот" без дії, за винятком копіювання дати / часу з EXIF ​​у дату та час файлу. При бажанні можна досягти і протилежного. :

  • i_view32.exe file_spec \ *. jpg / jpg_rotate = (0,0,0,1,0,0,0,0)

  • Щоб скопіювати дату / час у зворотному напрямку ((filepec до EXIF),
    використовуйте, як зазначено вище, з (0,0,1,0,0,0,0,0)


голова

буде робити майже все, що ви можете уявити з файлами jpeg

Джерело: Безкоштовно від http://www.sentex.net/~mwandel/jhead/

Я використовую пакетний файл, як показано нижче. Можливі й інші варіанти:

  • jhead -ft % 1 .jpg

Вони кажуть: Речі jhead можуть змінюватися у exif-файлі jpeg

  • Зображення вгорі праворуч відповідно до тегу обертання за допомогою jpegtran
    Встановити або відносно відрегулювати внутрішні часові позначки exif
    Виправити зміщення дати / часу у великих партіях зображень
    Перейменувати файли та штампи дат відповідно до позначки часу
    exif Передавати заголовки exif між зображеннями
    Замінити мініатюри всередині заголовків Exif
    Редагувати jpeg коментарі (але не коментарі Exif)
    Видалення розділів exif або коментарів із зображень jpeg
    Створення нового мінімального заголовка exif, що містить дату та мініатюру

_________________________

Примітка: серпень 2016 року: "Анонімний користувач" правильно запропонував, що одна запропонована конверсія не працює, як я вже сказав. Я широко додав до відповідної області.


Серпень 2016 року: "Анонімний користувач" правильно запропонував, що одна запропонована конверсія не працює, як я вже сказав. Я широко додав до відповідної області.
Рассел Макмахон

А як із необробленими файлами?
Майкл С

@MichaelClark Я радий, що ти задав це питання :-). Зауважу, що ми всі, мабуть, зверталися до файлів JPG, а не до RAW. Я б уявив, що ви були б одним із найбільш імовірних людей, які б запитали, як це зробити з файлами RAW :-).
Рассел Макмахон

4

Ще один інструмент EXIF ​​командного рядка, який може змінити останню модифіковану дату файлів відповідно до часу фотографування на основі метаданих EXIF ​​у файлі зображень JPEG:

 exiv2 -T rename somedir/foo*.jpg

Не хвилюйтесь, аргумент команди renameтам нормальний і не шкодить.
Просто дія з перейменуванням файлів не використовується, щоб створити лише побічний ефект зміни часової позначки.


2

Хоча я дійсно не рекомендую покладатися на дату / час файлу, коли мова йде про ваші зображення, ви можете використовувати безкоштовний інструмент під назвою EXIF Date Changer, щоб встановити дати файлу для всіх ваших зображень у форматі JPG. За замовчуванням на фотографії зроблено як дату створення, так і дати зміни файлу, змінені датою.

Причиною, чому я не рекомендую це дата, файл легко оновлюється. Якщо ви редагуєте зображення, змінена дата оновлюється. Якщо ви скопіюєте зображення, воно отримає нову дату.

Набагато кращим рішенням є перейменування файлів, щоб включити дату / час у саме ім'я файлу. Це все ще дозволяє легко сортувати та добре працює із зображеннями, які зберігаються на iPhone / Dropbox.

EXIF Date Changer - Встановлення дат файлу для прийняття дати


2

Перегляньте моє нове безкоштовне програмне забезпечення "Організатор фотографій": http://photodateorganizer.sourceforge.net/

введіть тут опис зображення


1
На сторінці SourceForge: "Принесено вам: killdaclick". Реклама власної продукції тут не заборонена, але ви повинні чітко пояснити, яка ваша приналежність.
Філіп Кендалл

@PhilipKendall зроблено :)
killdaclick

1

Швидкий перегляд зображень FastStone може це зробити (версія 4.9 використовується) - просто виберіть файли на панелі мініатюр, клацніть правою кнопкою миші, виберіть "Інструменти"> "Змінити часову позначку" - тоді ви можете або використовувати EXIF ​​(з модифікаціями або без них) або використовувати цілком фіксована фіксована дата / час вручну.


Оце Так! Я не знаю цього. Я використовую їх інструмент для захоплення екрану протягом багатьох років і нічого кращого не знайшов. Ви можете отримати останню безкоштовну версію тут ; Мені не потрібно жодної функції оплати. Я також раніше використовував їх глядача, але не знав, що це може зробити.
Mawg

1

Advance Renamer - найкраще програмне забезпечення, яке дуже зручно для користувачів, і це дуже просто.

  1. Перетягуйте всі фотографії до AR (Advance Renamer)

  2. Клацніть на (Вгорі ліворуч) Додати метод -> Нове ім'я

  3. Натисніть на одне із зображень знизу, ви побачите кнопку ExifTool, яка показує всі метадані, просто натисніть на атрибут, і ви отримаєте тег. У цьому випадку це<ExifTool:DateTimeOriginal>

  4. Скопіюйте та вставте цей в Нове ім'я текстового поля Ви можете додати що - або до або після того, як, як IMG_<ExifTool:DateTimeOriginal>, і DSC_<ExifTool:DateTimeOriginal>т.д.

  5. Клацніть Почати пакет ( Вгорі праворуч) Це дозволить перейменувати всі ваші файли з датою Напр. 2017_12_01 19_10_12 Завжди добре мати початкову дату в імені файлу, оскільки атрибути можуть бути втрачені, але імена файлів не будуть.

  6. Знову перетягніть всі перейменовані файли на AR
  7. Клацніть Новий метод -> Відмітка часу
  8. Поставте всі 3 прапорці Створити, Змінити, Отримати доступ (Отриманий доступ іноді може не працювати, просто зніміть його, якщо це сталося)
  9. Виберіть « Шаблон файлу» і вставте<Year>_<Month>_<Day> <Hour>_<Min>_<Sec>
  10. Почати партію.
  11. Ти хороший. Місія виконана

0

Я запропонував це автору PhotoRenamer, який відповів ...

PhotoRenamer 3.2 http://www.tgmdev.be/applications/photorenamer/photorenamer.php

Я додаю кнопку на вкладці "Параметри" Стрічки. Звідти ви можете вибрати опцію оновлення статусу файлу за часом.

До речі, щоб уникнути використання маски, я також додаю новий атрибут маски:% F. Якщо ви користуєтеся цією простою маскою, файл перейменовано ... з власним ім'ям ... Отже, ви не зобов'язані перейменовувати файл, для якого ви хочете оновити атрибути часу файлу ...


0

Це старе питання, і схоже, що є кілька пропозицій, які повинні працювати добре, але той, до якого я прийшов, щоб розібратися з проблемою впорядкування файлів після оновлення телефону на Android, був таким.

  • Відкрити Windows (вперше за віки)
  • Встановіть ExtFS або щось, що може читати розділи ext4
  • Скопіюйте фотографії на жорсткий диск з Micro SD
  • Використовуйте Changer Changer ( https://www.petges.lu/home/ ) для встановлення створених / змінених дат до EXIF-дати
  • Ударну картку назад в телефон
  • Скопіюйте фотографії назад на телефон через MTP

Можливо, це комусь стане в нагоді.


-2

Інша безкоштовна програма - Google Picasa - ви можете легко змінити дату та час для всіх фотографій:

введіть тут опис зображення

введіть тут опис зображення

Приємна стаття про це: Як змінити дату фотографії в Picasa на, коли фотографію зроблено


2
Як працює це рішення? ОП хоче змінити дату файлу відповідно до дати EXIF . Мабуть, це не те, що робить Picasa.
Олів'є
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.