Tiếp tục tải xuống không thành công bằng cách sử dụng công cụ dòng lệnh Linux


37

Làm cách nào để khôi phục tệp được tải xuống một phần bằng công cụ dòng lệnh Linux?

Tôi đã tải xuống một tệp lớn một phần, tức là 400 MB trong số 900 MB do gián đoạn nguồn, nhưng khi tôi bắt đầu tải xuống lại thì nó lại tiếp tục từ đầu. Làm cách nào để bắt đầu từ 400 MB?


5
Dòng lệnh nào bạn đã sử dụng để tải xuống tệp ở vị trí đầu tiên?
Anthon

3
Xin đừng trả lời trong một bình luận, cập nhật câu hỏi chưa hoàn chỉnh của bạn .
Anthon

1
Nếu bạn đang sử dụng curl, bạn nên tìm kiếm trang man cho -Ctùy chọn.
HalosGhost

Câu trả lời:


53

Vì bạn không chỉ định, tôi giả sử bạn đang sử dụng wgetđể tải xuống tệp. Nếu đây là trường hợp, hãy thử sử dụng nó với -ctùy chọn (ví dụ wget -c <URL>).

Xin lưu ý rằng trong trường hợp giao thức được sử dụng là ftp (URL trông giống như vậy ftp://...), có khả năng máy chủ từ xa sử dụng trình nền ftp cũ / cổ không hỗ trợ tiếp tục tải xuống (dù sao các ftp mới hơn cũng hỗ trợ nó trong hơn một thập kỷ , vì vậy đây chỉ là một cơ hội nhỏ). Nếu đây là trường hợp, bạn có thể không gặp may. Mặt khác, bạn sẽ không gặp vấn đề gì nếu giao thức được sử dụng là http. (CẬP NHẬT: Theo các chuyên gia khác (bao gồm Gilles trong các bình luận bên dưới), việc tiếp tục trong khi sử dụng http cũng phải chịu sự hỗ trợ của máy chủ, vì vậy điều này áp dụng cho cả ftp và http).

Chúc may mắn.


5
Tải xuống HTTP chỉ có thể được nối lại nếu máy chủ hỗ trợ và điều đó hiếm hơn so với máy chủ FTP.
Gilles 'SO- ngừng trở nên xấu xa'

Cảm ơn Gilles, tôi chỉ có kinh nghiệm tốt khi tiếp tục sử dụng http, nhưng bạn có thể đúng và tôi may mắn. Sẽ cập nhật câu trả lời của tôi.
Marcelo

wget -c http:...đã làm việc với 3 hoặc 4 máy chủ mà tôi đã thử.
Bob Stein

Chúa phù hộ bạn!
người học

3
@Gilles: Trên thực tế, đây hiện là một tùy chọn phổ biến với bất kỳ nội dung tĩnh nào từ các máy chủ mới hơn ~ 2010 (nói cách khác, hầu hết các máy chủ đều cho phép các yêu cầu Phạm vi cho các tệp tĩnh theo mặc định). Đối với dữ liệu được tạo động, điều này thực sự hiếm.
Piskvor

0

Tôi biết câu hỏi ban đầu có nghĩa là gì, và câu trả lời không phải...

Kịch bản có thể được mô tả như thế này:

# Start mirroring a site
wget -m http://...
# 400MB later wget died or interrupted,
# don't know where it left off, don't care,
# just want to get the remaining 100MB without getting the first 400MB again
wget -nc -r -l inf --no-remove-listing http://...

Tùy chọn "-r -l inf --no-remove-list" tương đương với -m không có tham số -N. Thêm tham số -nc tránh lưu 400MB đầu tiên đã có trong ổ cứng của bạn.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.