#!/bin/sh # 2025 dtb. public domain directory="$1" alias have='command -v >/dev/null 2>&1' xml_url_prefix='https://www.youtube.com/feeds/videos.xml?channel_id=' if test -z "$2"; then printf 'Usage: %s directory channel_id...\n' "$0" >&2 exit 64 # sysexits(3) EX_USAGE fi while test -n "$2"; do if have curl; then curl=curl elif have wget; then curl='wget -O -' else curl=false fi filename="$(printf '%s/%s.xml\n' "$directory" "$2")" $curl "$xml_url_prefix""$2" >"$filename".new if ! grep '' <"$filename".new | head -n 1 \ | grep 404 >/dev/null 2>&1 then mv "$filename".new "$filename" \ && printf '%s\n' "$filename" fi rm -f "$filename".new shift done