wget이 사용할 목록 내에서 파일 이름을 구체적으로 바꾸려면 어떻게 해야 합니까?

wget이 사용할 목록 내에서 파일 이름을 구체적으로 바꾸려면 어떻게 해야 합니까?

일부 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"

(테스트되지 않음)

관련 정보