JPEG写真ファイルのEXIFデータを一括変更する方法(カメラに設定された日付が間違っています)?

JPEG写真ファイルのEXIFデータを一括変更する方法(カメラに設定された日付が間違っています)?

あるイベントで300枚の写真を撮りました。後でカメラの日付が正しく設定されていないことがわかりました。つまり、休みの日でした。ファイルには作成日だけでなくEXIFデータもたくさんあります。

関連するすべてのEXIFフィールドに含まれる日付のみを変更して日付(正確に1日減算)を変更するにはどうすればよいですか?

この修正によって他のデータが変更されてはいけません!

おそらく、各ファイルのデータ(exiftoolまたはexiv2?)をダンプしてから、ダンプを変更し(awk?で)、変更されたダンプでEXIFデータを置き換えることができますか?しかし、どのように?

編集する:

各ファイルには大量のデータがあります。

# exiftool IMG_9040.JPG | wc 
    289    2218   13996

多くの日付は次のとおりです。

# exiftool IMG_9040.JPG | grep 2021 | grep -v File
Modify Date                     : 2021:11:02 17:06:58
Date/Time Original              : 2021:11:02 17:06:58
Create Date                     : 2021:11:02 17:06:58
Create Date                     : 2021:11:02 17:06:58.24+01:00
Date/Time Original              : 2021:11:02 17:06:58.24+01:00
Modify Date                     : 2021:11:02 17:06:58.24+01:00

私はすべてを変えたいと思います。

答え1

Exiftoolには1つの-alldatesパラメータがあります。

exiftool -alldates-=24 -filemodifydate-=24 -filecreatedate-=24   *.jpg

このフォーラムのコメント(Phil Harveyによる)によると、上記のコードは24時間です。

https://exiftool.org/forum/index.php?topic=6330.msg31354#msg31354

上記のコードを(または新しいディレクトリに)-outなどのファイル仕様と組み合わせてください。-out ./newJPG.jpg-out ./newdir/newJPG.jpg-outexiftool

-outファイル仕様に追加してみることもできます(バックアップ後!)、オプション-overwrite_originalOR -overwrite_original_in_place、呼び出しの直後に挿入されますexiftoolexiftool --help詳細より。

この記事の以前のバージョンでは、この -globalTimeShiftパラメータを次のように使用することをお勧めしました。

exiftool -globalTimeShift -24 -time:all  *.jpg

しかし(フィルハーベイによると)"-globalTimeShiftこのオプションは、移動した日付/時刻値を別のラベルにコピーする場合にのみ必要です。"、ラベルなど-geo。望むより:

https://exiftool.org/forum/index.php?topic=9224.msg47655#msg47655
https://exiftool.org/forum/index.php?topic=6330.msg31354#msg31354

https://exiftool.org/exiftool_pod.html
https://exiftool.org/

答え2

次のように入力できます。

exiftool -EXIF:CreateDate+=24 img.jpg

24時間を追加します。

関連情報