dots/.scripts/cam/importcam

39 lines
894 B
Bash
Executable File

#!/usr/bin/env zsh
# copy photos with exif data on them into a date-structured directory hierarchy
# source and destination locations
srcdir="$CAM_PIC_SRC"
picdir="$(xdg-user-dir PICTURES)/cam"
start=1
total=`ls $srcdir | wc -l`
for f in `ls $srcdir`
do
progress="$start/$total"
start=$((start+1))
src="$srcdir/$f"
# get the exif create date and turn it into a filepath
datestr=`exiftool -CreateDate "$src"`
datedir=`echo "$datestr" | awk '{ gsub(":","/",$4); print $4; }'`
datedir="$picdir/$datedir"
# make sure the destination exists
[ ! -d $datedir ] && mkdir -p $datedir
dest="$datedir/$f"
# if the file exists, don't overwrite
if [ -f $dest ]; then
print "[$progress] skipping $src->$dest: destination file already exists"
else
print "[$progress] sync $src -> $dest"
rsync $src $dest
fi
done
exit 0