일부 YouTube 동영상에 대한 링크 목록이 포함된 파일이 있습니다.
명령을 실행할 때:
wget -i list
모든 것이 잘 작동하지만 wget은 각 링크 끝에 있는 잘못된 문자로 파일 이름을 자동으로 바꿉니다. 링크가 너무 많기 때문에 wget을 수동으로 실행하는 것은 옵션이 아닙니다. wget이 인식할 링크에 대한 사용자 정의 이름을 어떻게 지정합니까?
답변1
이 -O
옵션을 사용하면 대상 파일 이름을 지정할 수 있습니다. 그러나 여러 파일을 한 번에 다운로드하면 wget
모든 내용이 를 통해 지정한 파일에 저장됩니다 -O
. 알아채다두 경우 모두 파일이 잘립니다.이미 존재하는 경우. 바라보다매뉴얼 페이지더 많은 정보를 알고 싶습니다.
wget
각 다운로드 링크를 알려줌으로써 이 옵션을 활용할 수 있습니다 :
while IFS= read -r url;do
fileName="blah" # Add a rule to define a new name for each file here
wget -O "$fileName" "$url"
done < list
당신은 또한 걸릴 수 있습니다조조의 조언파일의 각 URL 옆에 파일 이름을 추가하고 다음을 수행합니다.
while IFS= read -r url fileName;do
wget -O "$fileName" "$url"
done < list
파일의 각 URL 뒤에 (고유한) 파일 이름(공백으로 구분)을 추가한다고 가정해 보겠습니다.
답변2
인생을 단순하게 만들고, 인생을 복잡하게 만들지 마세요...
Bash 스크립트를 만들고 이름을 list.sh로 지정하고 다음 줄을 추가하세요.
wget url -O your-filename
wget url2 -O your-filename2
원하는만큼 가져 와서 실행 가능하게 만드십시오.
chmod 775 list.sh
실행해./list.sh
답변3
맨페이지를 확인해볼 수도 있습니다 youtube-dl
.
youtube-dl -a URL-file -o '-o "%(autonumber)s-%(title)s.%(ext)s"
(테스트되지 않음)