Skip to main content
added 245 characters in body
Source Link
terdon
  • 53.7k
  • 14
  • 128
  • 172

You're on the right track with the &, but you don't want that as part of the file name. You want to run this:

youtube-dl "https://www.youtube.com/watch?v=iXFvkJLqPqo" &

But because you have the & in the file, you are actually running this:

youtube-dl "https://www.youtube.com/watch?v=iXFvkJLqPqo &"

Also, you probably want to redirect standard error so your terminal isn't polluted by the progress reports. Try this:

while read in; do ./youtube-dl "$in" 2>/dev/null & done < vidfilelist 

This should be fine for a list of URLs, but as a general rule when parsing text files in the shell, you also want to clear the input field separator with IFS= and ensure you don't expand \-escape sequences, so do this:

while IFS= read -r in; do ./youtube-dl "$in" 2>/dev/null & done < vidfilelist 

You're on the right track with the &, but you don't want that as part of the file name. Also, you probably want to redirect standard error so your terminal isn't polluted by the progress reports. Try this:

while read in; do ./youtube-dl "$in" 2>/dev/null & done < vidfilelist 

This should be fine for a list of URLs, but as a general rule when parsing text files in the shell, you also want to clear the input field separator with IFS= and ensure you don't expand \-escape sequences, so do this:

while IFS= read -r in; do ./youtube-dl "$in" 2>/dev/null & done < vidfilelist 

You're on the right track with the &, but you don't want that as part of the file name. You want to run this:

youtube-dl "https://www.youtube.com/watch?v=iXFvkJLqPqo" &

But because you have the & in the file, you are actually running this:

youtube-dl "https://www.youtube.com/watch?v=iXFvkJLqPqo &"

Also, you probably want to redirect standard error so your terminal isn't polluted by the progress reports. Try this:

while read in; do ./youtube-dl "$in" 2>/dev/null & done < vidfilelist 

This should be fine for a list of URLs, but as a general rule when parsing text files in the shell, you also want to clear the input field separator with IFS= and ensure you don't expand \-escape sequences, so do this:

while IFS= read -r in; do ./youtube-dl "$in" 2>/dev/null & done < vidfilelist 
Source Link
terdon
  • 53.7k
  • 14
  • 128
  • 172

You're on the right track with the &, but you don't want that as part of the file name. Also, you probably want to redirect standard error so your terminal isn't polluted by the progress reports. Try this:

while read in; do ./youtube-dl "$in" 2>/dev/null & done < vidfilelist 

This should be fine for a list of URLs, but as a general rule when parsing text files in the shell, you also want to clear the input field separator with IFS= and ensure you don't expand \-escape sequences, so do this:

while IFS= read -r in; do ./youtube-dl "$in" 2>/dev/null & done < vidfilelist