Perintah wget Linux: unduh dan lanjutkan berkas dari URL
Perintah wget mengunduh berkas dari URL HTTP, HTTPS, atau FTP dan menyimpannya ke disk. Gunakan -O untuk memilih berkas keluaran dan -c untuk mencoba melanjutkan unduhan lama, tetapi pastikan lokasi simpan serta kecocokan berkas sebelum menjalankannya.
Penjelasan ini mengacu pada GNU Wget. Unduhan yang selesai belum membuktikan keaslian isinya, dan keberadaan berkas tidak membuktikan transfer berhasil. Periksa status proses serta checksum atau tanda tangan resmi jika tersedia.
Sintaks dan persiapan
wget [OPSI] URL
OPSI adalah penanda. Periksa wget --version dan man wget pada sistem Anda; GNU Wget, Wget2, serta implementasi minimal dapat berbeda. Jika perintah belum tersedia, cari paket penyedianya melalui pengelola paket distribusi.
Pilih direktori kerja yang benar, pastikan ada ruang dan izin tulis, lalu periksa apakah nama keluaran sudah dipakai berkas lain. Tulis URL yang mengandung karakter khusus shell di dalam tanda kutip. Gunakan alamat unduhan resmi untuk berkas yang akan dijalankan atau dipasang.
Unduh satu URL
wget https://example.com/
Tanpa -O, nama lokal biasanya diturunkan dari URL. URL yang berakhir dengan garis miring seperti contoh ini umumnya disimpan sebagai index.html pada konfigurasi bawaan. Jangan mengasumsikan nama selalu berasal dari header server; pengaturan seperti Content-Disposition dapat mengubah perilaku bila diaktifkan.
Pada unduhan sederhana tanpa opsi pengaturan ulang yang lain, pengulangan URL yang sama dapat menghasilkan nama bersufiks .1, .2, dan seterusnya agar salinan lama tetap ada. Aturan itu tidak berlaku sama untuk semua kombinasi opsi, terutama -O atau mode rekursif.
Satu URL halaman tidak otomatis menghasilkan salinan lengkap situs beserta seluruh gambar dan skrip. Contoh ini juga tidak menjalankan kode atau JavaScript halaman. Untuk kebutuhan satu berkas, gunakan URL berkas yang tepat dan periksa tipe serta isinya setelah diunduh.
Tentukan berkas keluaran dengan -O
wget -O example.html https://example.com/
-O menulis hasil ke example.html. Pada GNU Wget, opsi ini menyerupai pengalihan keluaran: berkas tujuan dapat dipotong menjadi kosong segera, sebelum unduhan berhasil. Cadangkan berkas penting atau pilih nama baru; jangan mengandalkan keberhasilan jaringan untuk mempertahankan isi lama.
-O bukan sekadar aturan penamaan untuk setiap URL. Bila beberapa dokumen diminta dengan satu -O, isinya dapat digabungkan ke satu keluaran. Hindari menggabungkannya dengan pengambilan rekursif untuk tujuan membuat satu berkas terpisah bagi setiap sumber.
Huruf besar penting: -O mengatur berkas isi unduhan, sedangkan -o mengatur berkas log. Jika hanya ingin mengatur direktori dasar penyimpanan, pelajari -P; opsi itu berbeda dari mengganti nama keluaran dengan -O.
Lanjutkan unduhan dengan -c
wget -c https://example.com/archive.tar.gz
archive.tar.gz pada domain contoh adalah penanda URL arsip, bukan janji bahwa berkas tersebut tersedia. Untuk penggunaan nyata, ganti dengan URL resmi berkas yang sama dan jalankan dari direktori yang berisi salinan parsialnya.
Wget memakai panjang berkas lokal sebagai titik awal kelanjutan. Pada HTTP, server perlu mendukung permintaan rentang atau Range. Jika server tidak mendukung kelanjutan, GNU Wget dapat mengunduh ulang dari awal dan menimpa berkas yang ada; -c tidak menjamin penghematan transfer maupun pelestarian berkas parsial.
Jika berkas jarak jauh berubah menjadi versi berbeda yang lebih panjang, sisa data baru dapat ditambahkan ke awalan lama dan menghasilkan berkas rusak. Wget tidak membuktikan bahwa awalan lokal cocok dengan awalan berkas server. Panjang yang sama pun bukan verifikasi isi; periksa checksum atau tanda tangan versi yang diharapkan setelah selesai.
Jika kesesuaian salinan parsial diragukan, simpan salinan itu terpisah dan mulai unduhan bersih dari sumber resmi. Jangan menghapus satu-satunya salinan penting hanya untuk memaksakan kelanjutan.
Periksa hasil dan status proses
wget -O example.html https://example.com
ls -lh example.html
Perintah pertama menyimpan hasil, dan perintah kedua menampilkan nama serta ukuran jika example.html ada. Dua baris ini bukan pemeriksaan keberhasilan otomatis: ls tetap dapat dijalankan setelah wget gagal dan dapat menampilkan berkas kosong, parsial, atau lama.
Di shell, baca $? segera setelah wget bila ingin mendapatkan kode keluar wget. Jika Anda sudah menjalankan ls, $? mengacu pada ls. GNU Wget memakai 0 bila tidak terjadi masalah; kode seperti 3 untuk I/O berkas, 4 untuk jaringan, 5 untuk verifikasi SSL, dan 8 untuk respons kesalahan server memberi petunjuk berbeda.
Pesan kemajuan dan status dapat muncul pada keluaran kesalahan standar. Ukuran dan isi halaman contoh dapat berubah, jadi jangan mengharapkan jumlah byte tetap. Periksa isi sesuai jenis berkas yang diminta, bukan hanya ekstensi nama atau adanya pesan selesai.
Checksum yang dihitung harus dibandingkan dengan nilai versi yang sama dari penerbit tepercaya. Menghitung hash tanpa nilai pembanding tidak membuktikan keaslian. Untuk membandingkan pengambilan isi dengan pemeriksaan status HTTP, curl untuk respons dan status HTTP menyediakan bentuk keluaran yang berbeda.
Opsi utama
| Opsi | Fungsi dan batasnya |
|---|---|
-O BERKAS |
Menentukan berkas isi keluaran; dapat mengosongkan atau menimpa berkas lama. |
-P DIREKTORI |
Menentukan direktori dasar penyimpanan. |
-c |
Mencoba melanjutkan berkas parsial yang sudah ada. |
-q |
Menonaktifkan keluaran pesan; tetap periksa kode keluar. |
--spider |
Memeriksa keberadaan URL tanpa menyimpan isi halaman sebagai unduhan biasa. |
-r |
Mengambil sumber yang ditautkan secara rekursif. |
--spider masih melakukan permintaan jaringan dan bukan bukti bahwa unduhan atau layanan lengkap berfungsi. Jika metode pemeriksaan ditolak server, periksa kembali dengan permintaan yang sesuai; jangan langsung menyatakan URL hilang.
Definisi opsi dan kode keluar dijelaskan dalam halaman manual GNU Wget di man7.org. Cocokkan dengan versi lokal sebelum memakai opsi yang belum dikenal.
Batasi cakupan dan pertahankan verifikasi
-r dapat meminta banyak sumber. Tentukan host, jalur, kedalaman, dan beban permintaan sesuai izin serta kebijakan situs sebelum memakainya. Pada GNU Wget, batas kedalaman -l 0 berarti tanpa batas, bukan nol tautan; untuk satu berkas, cukup gunakan URL berkas tanpa -r.
Jangan mematikan verifikasi sertifikat sebagai langkah rutin untuk memperbaiki HTTPS. Periksa nama host, waktu sistem, sertifikat, dan sumber kepercayaan yang tepat. Hindari menaruh token rahasia pada URL atau baris perintah yang dapat masuk ke riwayat maupun log, serta jangan langsung menjalankan berkas unduhan yang belum diperiksa.
FAQ
Apakah wget -c selalu aman untuk melanjutkan unduhan?
Tidak. Dukungan server serta kecocokan berkas lokal dan jarak jauh menentukan hasilnya. Server tanpa dukungan kelanjutan dapat menyebabkan unduhan ulang, dan versi yang berubah dapat menghasilkan gabungan rusak. Verifikasi berkas lengkap terhadap sumber resmi.
Apakah ls yang menunjukkan example.html membuktikan unduhan berhasil?
Tidak. ls hanya menunjukkan berkas yang ada. Periksa kode keluar wget sebelum menjalankan perintah lain, lalu nilai isi dan integritas berkasnya.




