Files
bin/moveExifDescriptionToCsvAndPlex.sh
T

44 lines
1.3 KiB
Bash
Raw Normal View History

2026-01-19 21:31:50 +01:00
#!/bin/bash
# scan the photo library for a specific year, add the exif-descriptons as title to plex
PHOTOPATH='/media/plex/Photos'
OUTPUT="~/photos.csv"
SQLFILE="/tmp/update_plexdb.sql"
function set_file_desc {
image="$*"
filename=$(basename "${image}")
filefirstname="${filename%.*}"
IDESC=$(exiftool -EXIF:ImageDescription "${image}")
IFS=: read -r dummy title <<< "$IDESC"
titleclean=$(echo ${title} | tr ';' ':')
if [[ ${#titleclean} -gt 2 ]]; then
echo "${filefirstname};${titleclean}" >> ${OUTPUT}
fi
}
YEAR=$1
if [[ ${#YEAR} -gt 3 ]]; then
rm -f ${OUTPUT}
find ${PHOTOPATH}/${YEAR} -type f -iname "*.jpg" -print0 | while IFS= read -r -d '' file; do
echo $file
# set_file_desc $file
done
sed -i "s/'/''/g" ${OUTPUT}
fi
while IFS= read -r line; do
echo "Text read from file: $line"
IFS=';' read -r filename title <<< "$line"
echo "update metadata_items set title='${title}' where metadata_type=13 and title_sort='${filename}';" >>${SQLFILE}
done < ${OUTPUT}
systemctl stop plexmediaserver.service
cat ${SQLFILE} | /usr/lib/plexmediaserver/Plex\ SQLite "/var/lib/plexmediaserver/Library/Application Support/Plex Media Server/Plug-in Support/Databases/com.plexapp.plugins.library.db"
systemctl start plexmediaserver.service