diff --git a/plex/plex-recent-additions.sh b/plex/plex-recent-additions.sh index 2c2bc50..0b4567e 100755 --- a/plex/plex-recent-additions.sh +++ b/plex/plex-recent-additions.sh @@ -39,6 +39,26 @@ # ################################################################################ +# Handle command line arguments +DAYS=${1:-7} + +# Show help if requested +if [ "$1" = "--help" ] || [ "$1" = "-h" ]; then + echo "Usage: $0 [DAYS]" + echo "Show Plex media added in the last DAYS days (default: 7)" + echo "" + echo "Examples:" + echo " $0 # Last 7 days" + echo " $0 30 # Last 30 days" + exit 0 +fi + +# Validate that DAYS is a number +if ! [[ "$DAYS" =~ ^[0-9]+$ ]]; then + echo "Error: DAYS must be a positive integer" + exit 2 +fi + # Define the path to the Plex database PLEX_DB="/var/lib/plexmediaserver/Library/Application Support/Plex Media Server/Plug-in Support/Databases/com.plexapp.plugins.library.db" @@ -48,21 +68,21 @@ if [ ! -f "$PLEX_DB" ]; then exit 1 fi -# Query the database for items added in the last 7 days +# Query the database for items added in the specified number of days sqlite3 "$PLEX_DB" <= strftime('%s', 'now', '-7 days') - + meta.added_at >= strftime('%s', 'now', '-$DAYS days') + and meta.title is null ORDER BY meta.added_at DESC; EOF