# download video from URL in background. vdl() { echo "$@" > src.txt yt-dlp -f 'bestvideo[height<=?1081]+bestaudio/best' --download-archive index.txt --embed-thumbnail --embed-subs --write-auto-subs --embed-metadata --merge-output-format mkv -cio '%(playlist_index)000006d_%(id)s.%(ext)s' "$@" } # download all videos from file. alias vdl_file="vdl -a" # update playlist. vdl_update() { local src="$(cat src.txt)" vdl "$src" } # update all playlists recursively. vdl_update_all() { local root="$PWD" local dir for file in **/src.txt; do dir="${file%/*}" cd "$dir" echo "$PWD" vdl_update cd "$root" done }