From 395e0d845e5927546f532865f082ff1f6d6b96c1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jakobus=20Sch=C3=BCrz?= Date: Tue, 10 Nov 2020 17:26:25 +0100 Subject: [PATCH] Merged detached head into master --- bin/exif-fixdatetime | 71 +++++++++++++++++++++++ vim/pack/plugins/start/vim-airline-themes | 2 +- 2 files changed, 72 insertions(+), 1 deletion(-) create mode 100755 bin/exif-fixdatetime diff --git a/bin/exif-fixdatetime b/bin/exif-fixdatetime new file mode 100755 index 0000000..e172d8f --- /dev/null +++ b/bin/exif-fixdatetime @@ -0,0 +1,71 @@ +#!/bin/bash +export FILELOGLEVEL=ERROR + +datetime_v1 () { + branch="$(basename $1)" + if [[ $branch =~ ^([0-9]{4})(\.|-)([0-9]{2})(\.|-)([0-9]{2})( |_)([0-9]{2})(\.|-)([0-9]{2})(\.|-)([0-9]{2}).*$ ]]; then + printf "%04d:%02d:%02d %02d:%02d:%02d" "${BASH_REMATCH[1]#0}" "${BASH_REMATCH[3]#0}" "${BASH_REMATCH[5]#0}" "${BASH_REMATCH[7]#0}" "${BASH_REMATCH[9]#0}" "${BASH_REMATCH[11]#0}" + fi +} + +datetime_v2 () { + branch="$(basename $1)" + if [[ $branch =~ ^([0-9]{4})([0-9]{2})([0-9]{2})(_)([0-9]{2})([0-9]{2})([0-9]{2}).*$ ]]; then + printf "%04d:%02d:%02d %02d:%02d:%02d" "${BASH_REMATCH[1]#0}" "${BASH_REMATCH[2]#0}" "${BASH_REMATCH[3]#0}" "${BASH_REMATCH[5]#0}" "${BASH_REMATCH[6]#0}" "${BASH_REMATCH[7]#0}" + fi +} + +datetime_v3 () { + branch="$(basename $1)" + if [[ $branch =~ ^(IMG-)([0-9]{4})([0-9]{2})([0-9]{2})(-WA)([0-9]{2})([0-9]{2}).*$ ]]; then + printf "%04d:%02d:%02d %02d:%02d:%02d" "${BASH_REMATCH[2]#0}" "${BASH_REMATCH[3]#0}" "${BASH_REMATCH[4]#0}" "${BASH_REMATCH[6]#0}" "${BASH_REMATCH[7]#0}" "00" + fi +} + +parsedatetime() { + filename="$(basename "${@}")" + if [[ $filename =~ ^([0-9]{4})(\.|-)([0-9]{2})(\.|-)([0-9]{2})( |_)([0-9]{2})(\.|-)([0-9]{2})(\.|-)([0-9]{2}).*$ ]]; then + result="$(printf "%04d:%02d:%02d %02d:%02d:%02d" "${BASH_REMATCH[1]#0}" "${BASH_REMATCH[3]#0}" "${BASH_REMATCH[5]#0}" "${BASH_REMATCH[7]#0}" "${BASH_REMATCH[9]#0}" "${BASH_REMATCH[11]#0}")" + fi + + if [[ $filename =~ ^([0-9]{4})([0-9]{2})([0-9]{2})(_)([0-9]{2})([0-9]{2})([0-9]{2}).*$ ]]; then + result="$(printf "%04d:%02d:%02d %02d:%02d:%02d" "${BASH_REMATCH[1]#0}" "${BASH_REMATCH[2]#0}" "${BASH_REMATCH[3]#0}" "${BASH_REMATCH[5]#0}" "${BASH_REMATCH[6]#0}" "${BASH_REMATCH[7]#0}")" + fi + + # Whatsapp-Bilder + if [[ $filename =~ ^(IMG-)([0-9]{4})([0-9]{2})([0-9]{2})(-WA)([0-9]{2})([0-9]{2}).*$ ]]; then + result="$(printf "%04d:%02d:%02d %02d:%02d:%02d" "${BASH_REMATCH[2]#0}" "${BASH_REMATCH[3]#0}" "${BASH_REMATCH[4]#0}" "${BASH_REMATCH[6]#0}" "${BASH_REMATCH[7]#0}" "00")" + fi + + echo "$result" + return 0 +} + +fix_datetime () { + file="${@}" + loginfo "file: $file " + newDateTimeOriginal="$(parsedatetime "$file")" + loginfo "newDateTimeOriginal: $newDateTimeOriginal" +# logdebug "INFO: DateTimeOrigin and DateCreated set in file +#$(exiftool -DateTimeOriginal -CreateDate "$file")" + if [ -n "$newDateTimeOriginal" ]; then + exiftool "-DateTimeOriginal=$newDateTimeOriginal" -if '(not $datetimeoriginal)' "$file" + exiftool '-createdate