나는 항상 wget -c
필요할 때 마지막 다운로드 위치에 추가하여 다운로드할 수 있는 파일을 다운로드하는 데 사용합니다.
파일을 다운로드합니다 30%
. 그런 다음 네트워크가 점유된 후 40%
. (나중에 가비지 데이터를 제공하기 위한 파일 서버 로직으로 인해 가비지가 추가되었습니다 30mins
.)
30mins
이제 동일한 파일의 다음 파일 에 사용할 수 있는 몇 가지 새 토큰이 포함된 새 URL 위치가 생겼습니다 . 동일한 파일을 계속 다운로드하지만 30%
나중에 다운로드를 시작하는 방법은 무엇입니까?
아니면 이를 수행할 수 있는 응용 프로그램이 있습니까?
전임자:
$ wget -c http://xyz.com/file.txt?token=1
30% [=============> ]
40% [=================> ] (10%junk added)
^C - cancelled
$ wget -c http://xyz.com/file.txt?token=2 --from='30%'
31% [+++++++++++++=> ]
참고: - --from='30%'
수행할 수 있는 경우의 예입니다. 비슷한 주장이 존재하지 않습니다.wget
답변1
wget -c / --continue
항상 지정된 파일 크기를 계속 사용하지만 변경할 수 있습니다.
truncate
파일을 원래 크기로 다시 축소하는 데 사용됩니다 30%
(크기를 바이트 또는 킬로바이트 단위로 지정해야 함). 또는 원본 파일을 건드리지 않는 를 사용할 수 있습니다 head -c SIZE file > file_30pc
(그러나 이름을 바꿔야 함).
BlueManCZ가 제안한 대로 이를 사용하여 -O output-file
동일한 파일인지 확인할 수 있습니다.
노트:마지막으로 좋은 위치를 지정하는 --start-pos
대신 다음을 사용하세요 .-c/--continue
아니요작동하면 해당 위치에서 시작하는 새 파일을 생성하는 대신 기존 파일을 추가하지 않습니다(지정하면 덮어쓰게 됩니다 -O
).
답변2
다른 URL에서 동일한 파일(또는 이름이 바뀐 파일)을 계속 다운로드해야 하는 경우 명령에 파일 이름을 지정해야 합니다.
wget -c -O myfilename https://examle.net/file1.txt
[will be stoped in 30%]
wget -c -O myfilename https://another_url.net/file2.txt
[will start on 30% of previous file]
[file1.txt and file2.txt must be same]
하지만 이것이 문제가 완전히 해결되었는지는 모르겠습니다.
답변3
aria2라는 또 다른 훌륭한 Linux 도구를 사용해 볼 수 있습니다. 다운로드를 재개하려면 다음을 수행해야 합니다.
aria2c -c -m 0 -o "myfile.zip" "http://example.com/file.zip"
여기서 -c는 이전 다운로드를 계속하도록 지시합니다. -m은 다운로드를 무한히 다시 시도하도록 지시합니다. -o는 파일을 출력하도록 지시합니다.
시도해 보세요. aria2는 Linux에서 최고의 다운로더 중 하나입니다.