get_youtube_videos/classify_videos.sh
2024-11-20 11:52:24 +02:00

40 lines
1.5 KiB
Bash
Executable file

#!/bin/bash
while read -r video_id
do
if [ -n "${video_id}" ]; then
echo "Video ID: '${video_id}'"
channel=$(yt-dlp -J -- "${video_id}" | jq '.channel' | sed 's/"//g' | head -n1)
if [ -n "${channel}" ] && [ "${channel}" != "null" ]; then
channel='Unknwon channel'
fi
echo "Channel name: '${channel}'"
if [ -n "${video_id}" ] && [ "${video_id}" != "null" ]; then
mkdir -p "${channel}"
while read -r file
do
echo "Moving file '${file}'..."
mv -- "${file}" "${channel}/"
done <<< "$(ls | grep -- "${video_id}")"
fi
fi
done <<< "$(find . -mindepth 1 -maxdepth 1 | grep -v downloaded | grep -Eo '\[[^]]{11}' | tr -d '[]' | sort | uniq)"
while read -r video_id
do
if [ -n "${video_id}" ]; then
echo "Video ID: '${video_id}'"
channel=$(yt-dlp -J -- "${video_id}" | jq '.channel' | sed 's/"//g' | head -n1)
if [ -n "${channel}" ] && [ "${channel}" != "null" ]; then
channel='Unknwon channel'
fi
echo "Channel name: '${channel}'"
if [ -n "${video_id}" ] && [ "${video_id}" != "null" ]; then
mkdir -p "${channel}"
while read -r file
do
echo "Moving file '${file}'..."
mv -- "${file}" "${channel}/"
done <<< "$(ls | grep -- "${video_id}")"
fi
fi
done <<< "$(find . -mindepth 1 -maxdepth 1 | grep -v downloaded | grep -Eo '/[^\.]{11}' | tr -d '/' | sort | uniq)"