From 6ebc5c13647fe447f0799bb5231f02e997bb7f8f Mon Sep 17 00:00:00 2001 From: Corey Date: Wed, 13 May 2026 09:47:54 -0700 Subject: [PATCH] add script --- mov.sh | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 mov.sh diff --git a/mov.sh b/mov.sh new file mode 100644 index 0000000..89e15a8 --- /dev/null +++ b/mov.sh @@ -0,0 +1,29 @@ +#!/bin/bash +set -euo pipefail + +if [ $# -eq 0 ]; then + echo "Usage: \$0 " >&2 + exit 1 +fi + +url="$1" +dir="/media/startos/data/package-data/volumes/filebrowser/data/data/jellyfin/Movies/" + +# Extract basename, drop query strings/fragments +filename="${url##*/}" +filename="${filename%%\?*}" +filename="${filename%%\#*}" + +# Safely decode only valid %XX sequences +decoded="$filename" +while [[ "$decoded" =~ %([0-9A-Fa-f]{2}) ]]; do + hex="${BASH_REMATCH[1]}" + chr=$(printf '%b' "\\x$hex") + decoded="${decoded//${BASH_REMATCH[0]}/$chr}" +done + +cd "$dir" || { echo "Failed to cd to $dir" >&2; exit 1; } + +echo "Downloading: $decoded" +sudo wget -O "$decoded" "$url" +sudo chown kiosk:startos "$decoded"