Lanjutkan pengunduhan yang gagal menggunakan alat baris perintah Linux

37

Bagaimana cara melanjutkan file yang diunduh sebagian menggunakan alat commandline Linux?

Saya mengunduh sebagian file besar, yaitu 400 MB dari 900 MB karena gangguan daya, tetapi ketika saya mulai mengunduh lagi, ia melanjutkan dari awal. Bagaimana saya memulai dari 400 MB itu sendiri?

amolveer
sumber
5
Perintah apa yang Anda gunakan untuk mengunduh file?
Anthon
3
Tolong jangan jawab dalam komentar, perbarui pertanyaan Anda yang tidak lengkap .
Anthon
1
Jika Anda menggunakan curl, Anda harus mencari halaman manual untuk -Copsi.
HalosGhost

Jawaban:

53

Karena Anda tidak menentukan, saya berasumsi Anda menggunakan wgetuntuk mengunduh file. Jika ini masalahnya, coba gunakan dengan -copsi (mis wget -c <URL>.).

Harap perhatikan bahwa jika protokol yang digunakan adalah ftp (URL terlihat seperti ftp://...) ada kemungkinan server jarak jauh menggunakan daemon ftp lama / kuno yang tidak mendukung melanjutkan pengunduhan (lagunya ftp yang lebih baru memang mendukungnya selama lebih dari satu dekade) , jadi ini hanya peluang kecil). Namun, jika ini masalahnya, Anda mungkin kurang beruntung. Di sisi lain Anda seharusnya tidak memiliki masalah jika protokol yang digunakan adalah http. (PEMBARUAN: Menurut para ahli lainnya (termasuk Gilles dalam komentar di bawah), melanjutkan kembali saat menggunakan http juga tergantung pada dukungan server, jadi ini berlaku untuk ftp dan http).

Semoga berhasil.

Marcelo
sumber
5
Unduhan HTTP hanya dapat dilanjutkan jika server mendukungnya, dan itu lebih jarang daripada dengan server FTP.
Gilles 'SANGAT berhenti menjadi jahat'
Terima kasih Gilles, saya hanya memiliki pengalaman yang baik dengan melanjutkan saat menggunakan http, tetapi Anda mungkin benar dan saya beruntung. Akan memperbarui jawaban saya.
Marcelo
wget -c http:...telah bekerja 3 atau 4 server saya sudah mencobanya.
Bob Stein
Tuhan memberkatimu manusia!
pelajar
3
@Gilles: Sebenarnya, ini sekarang merupakan opsi umum dengan konten statis dari server yang lebih baru dari ~ 2010 (dengan kata lain, sebagian besar server memungkinkan permintaan Range untuk file statis secara default). Untuk data yang dihasilkan secara dinamis, ini memang jarang terjadi.
Piskvor
0

Saya tahu apa arti pertanyaan aslinya, dan jawabannya tidak wget -c ...

Skenario dapat digambarkan seperti ini:

# 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://...

Opsi "-r -l inf --no-remove-listing" setara dengan -m tanpa parameter -N. Menambahkan parameter -nc hindari menyimpan 400MB pertama yang sudah ada di hard drive Anda.

Michael Chen
sumber