저는 항상 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
(그러나 이름을 바꿔야 함).
-O output-file
BlueManCZ가 제안한 것처럼 동일한 파일인지 확인하는 데 사용할 수 있습니다 .
메모:마지막으로 좋은 위치를 지정하는 --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용 다운로더 중 하나입니다.