В каталоге у меня около 80 каталогов; в каждом из них есть файл, содержащий ссылку на плейлист YouTube, который соответствует названию каталога. Я просто хочу извлечь ссылки на видео, которые есть в каждом плейлисте, и поместить их в файл в соответствующем каталоге.
Чтобы извлечь ссылки из списка воспроизведения:
youtube-dl -j --flat-playlist" URL "| jq -r '.id' | sed 's _ ^ _ https: //youtu.be/_'> Lplaylist
Результат этой команды присваивается файлу Lplaylist
.
URL содержится в файле в каждом каталоге. Я просто хочу заменить его командой, которая занимает первую строку (я использовал команду cut, но она не работает: youtube-dl -j --flat-playlist <
cat playlist | head -n 1 | jq -r '.id' | sed 's _ ^ _ https://youtu.be/_'> Lplaylist && sed 's / $ /" /' Lplaylist> temp && sed -e's / ^ / youtube-dl "/ 'temp> file.sh
: /)
Моя цель:
Большое вам спасибо, и я надеюсь, что я был не очень долго.
Моя последняя попытка была следующей:
youtube-dl -j --flat-playlist < `cat playlist | head -n 1` | jq -r '.id' | sed 's_^_https://youtu.be/_' > Lplaylist && sed 's/$/"/' Lplaylist > temp && sed -e 's/^/youtube-dl "/' temp > file.sh
(Переведено с помощью Google translate. Оригинальный текст доступен для просмотра в истории редакций )