Сценарии оболочки крайне чувствительны к отсутствию пробелов -при использовании встроенных -модулей для операций сравнения
if ["$Check" != *"image"*]; then
# ^^ ^^ lack of spaces
if [ "$Check" != *"image"* ]; then
# right syntax
Должен быть пробел после [
и начала следующего символа, а также перед ]
, без которого синтаксическая оценка для [..]
завершается ошибкой, выдавая сообщение об ошибке.
Exiftool имеет параметр -alldates
:
exiftool -alldates-=24 -filemodifydate-=24 -filecreatedate-=24 *.jpg
Приведенный выше код работает для вычитания 24 часов в соответствии с этим комментарием форума (Фила Харви):
https://exiftool.org/forum/index.php?topic=6330.msg31354#msg31354
Вы можете объединить приведенный выше код со спецификацией файла -out
, например -out./newJPG.jpg
или (в новом каталоге )с -out./newdir/newJPG.jpg
. Спецификация -out
вставляется сразу после вызова exiftool
.
Вы также можете попробовать добавить в -out
спецификацию файла(после создания резервных копий! ), опция -overwrite_original
ИЛИ -overwrite_original_in_place
, вставленная сразу после вызова exiftool
. Подробности см. в exiftool --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
Вы можете ввести:
exiftool -EXIF:CreateDate+=24 img.jpg
Чтобы добавить 24 часа.