mirror of
https://github.com/hanzoskill/apple-photos.git
synced 2026-10-30 21:04:04 +00:00
64 lines
1.7 KiB
Bash
64 lines
1.7 KiB
Bash
#!/bin/bash
|
|
# Get detailed info about a photo
|
|
# Usage: photos-info.sh <uuid>
|
|
# Output: Key-value pairs
|
|
|
|
UUID="$1"
|
|
|
|
if [ -z "$UUID" ]; then
|
|
echo "Usage: photos-info.sh <uuid>" >&2
|
|
exit 1
|
|
fi
|
|
|
|
PHOTOS_DB=~/Pictures/Photos\ Library.photoslibrary/database/Photos.sqlite
|
|
|
|
if [ ! -f "$PHOTOS_DB" ]; then
|
|
echo "Error: Photos database not found" >&2
|
|
exit 1
|
|
fi
|
|
|
|
sqlite3 -separator '|' "$PHOTOS_DB" "
|
|
SELECT
|
|
ZUUID,
|
|
ZFILENAME,
|
|
datetime(ZDATECREATED + 978307200, 'unixepoch', 'localtime'),
|
|
datetime(ZMODIFICATIONDATE + 978307200, 'unixepoch', 'localtime'),
|
|
datetime(ZADDEDDATE + 978307200, 'unixepoch', 'localtime'),
|
|
ZUNIFORMTYPEIDENTIFIER,
|
|
ZWIDTH,
|
|
ZHEIGHT,
|
|
CASE WHEN ZFAVORITE = 1 THEN 'Yes' ELSE 'No' END,
|
|
CASE WHEN ZHIDDEN = 1 THEN 'Yes' ELSE 'No' END,
|
|
ZLATITUDE,
|
|
ZLONGITUDE
|
|
FROM ZASSET
|
|
WHERE ZUUID = '$UUID'
|
|
AND ZTRASHEDSTATE = 0
|
|
LIMIT 1;
|
|
" 2>/dev/null | while IFS='|' read -r uuid filename created modified added type width height favorite hidden lat lon; do
|
|
if [ -z "$uuid" ]; then
|
|
echo "Error: Photo with UUID '$UUID' not found" >&2
|
|
exit 1
|
|
fi
|
|
echo "UUID: $uuid"
|
|
echo "Filename: $filename"
|
|
echo "Created: $created"
|
|
echo "Modified: $modified"
|
|
echo "Added: $added"
|
|
echo "Type: $type"
|
|
echo "Dimensions: ${width}x${height}"
|
|
echo "Favorite: $favorite"
|
|
echo "Hidden: $hidden"
|
|
if [ -n "$lat" ] && [ "$lat" != "" ] && [ "$lat" != "0" ] && [ "$lat" != "-180.0" ] && [ "$lat" != "-180" ]; then
|
|
echo "Location: $lat, $lon"
|
|
else
|
|
echo "Location: None"
|
|
fi
|
|
done
|
|
|
|
# Check if anything was output
|
|
if [ ${PIPESTATUS[0]} -ne 0 ]; then
|
|
echo "Error: Could not query Photos database" >&2
|
|
exit 1
|
|
fi
|