Added tools for EXIF manipulation. Added find_exsts.sh.

This commit is contained in:
Markus Birth 2015-10-22 22:48:09 +02:00
parent 23f253fadb
commit 1f557b43af
4 changed files with 42 additions and 0 deletions

2
exif2fdate.sh Executable file
View File

@ -0,0 +1,2 @@
#!/bin/sh
find -type f -iname '*.jpg' -print0 | xargs -0 exiv2 mv -T

9
exifdate.sh Executable file
View File

@ -0,0 +1,9 @@
#!/bin/sh
if [ -z "$1" -o -z "$2" ]; then
echo "Syntax: $0 DATE FILE1 [FILE2 [..FILEn]]"
exit 1
fi
DATE=$1
shift
exiv2 mo -M "set Exif.Photo.DateTimeOriginal '$DATE'" -M "set Exif.Photo.DateTimeDigitized '$DATE'" $@

29
exiffromfn.sh Executable file
View File

@ -0,0 +1,29 @@
#!/bin/bash
# Sets EXIF date from filename yyyymmddHHMMSS.jpg
for f in *.jpg *.JPG; do
if [ "$f" = "*.jpg" -o "$f" = "*.JPG" ]; then
continue
fi
echo "File: $f"
DATEPART=${f:0:14}
if [ ${#DATEPART} -ne 14 ]; then
echo "No date in filename: $f"
continue
fi
if ! [[ "$DATEPART" =~ ^(198|199|200|201|202)[0-9]+$ ]]; then
echo "Not numeric: $DATEPART ($f)"
continue
fi
YEAR=${DATEPART:0:4}
MONTH=${DATEPART:4:2}
DAY=${DATEPART:6:2}
HOUR=${DATEPART:8:2}
MINUTE=${DATEPART:10:2}
SECOND=${DATEPART:12:2}
DATE="$YEAR:$MONTH:$DAY $HOUR:$MINUTE:$SECOND"
exiv2 mo -M "set Exif.Photo.DateTimeOriginal '$DATE'" -M "set Exif.Photo.DateTimeDigitized '$DATE'" $f
done

2
find_exts.sh Executable file
View File

@ -0,0 +1,2 @@
#!/bin/sh
find -type f -print | sed 's/^.*\.\([a-zA-Z0-9]\+\)$/\1/gm' | sort -u