Pertanyaan: Saya biasanya menggunakan wget untuk mengunduh file. Pada beberapa sistem, wget tidak diinstal dan hanya curl yang tersedia. Bisakah Anda menjelaskan kepada saya dengan contoh sederhana tentang bagaimana saya dapat mengunduh file jarak jauh menggunakan curl? Apakah ada perbedaan antara curl dan wget?
Jawaban: Pada tingkat tinggi, wget dan curl adalah utilitas baris perintah yang melakukan hal yang sama.
- Keduanya dapat digunakan untuk mengunduh file menggunakan FTP dan HTTP.
- Anda juga dapat mengirim permintaan HTTP POST menggunakan curl dan wget
- Namun curl menyediakan API yang dapat digunakan oleh programmer di dalam kode mereka sendiri. curl menggunakan libcurl yang merupakan perpustakaan lintas platform.
- wget hanyalah alat baris perintah tanpa API apa pun.
- Curl juga mendukung lebih banyak protokol yang tidak didukung oleh wget. Misalnya:SCP, SFTP, TFTP, TELNET, LDAP(S), FILE, POP3, IMAP, SMTP, RTMP, dan RTSP.
- Ada keuntungan besar menggunakan wget. wget mendukung unduhan rekursif, sedangkan curl tidak.
Contoh Wget
Contoh berikut mengunduh file dan menyimpannya dengan nama yang sama dengan server jarak jauh.
wget http://www.openss7.org/repos/tarballs/strx25-0.9.2.1.tar.bz2
Contoh berikut mengunduh file dan menyimpannya dengan nama yang berbeda dari server jauh. Ini berguna ketika URL jarak jauh tidak berisi nama file dalam url seperti yang ditunjukkan pada contoh di bawah ini.
wget -O taglist.zip http://www.vim.org/scripts/download_script.php?src_id=7701
Contoh wget lainnya:Panduan Unduhan Wget Terbaik Dengan 15 Contoh Luar Biasa
Contoh Keriting
$ curl -O http://www.openss7.org/repos/tarballs/strx25-0.9.2.1.tar.bz2 % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 28 3762k 28 1085k 0 0 72771 0 0:00:52 0:00:15 0:00:37 54267
Opsi -O (huruf besar O) penting. Tanpa ini, curl akan mulai membuang file yang diunduh ke stdout. Menggunakan -O, itu mengunduh file dengan nama yang sama dengan server jarak jauh. Pada contoh di atas, kita sedang mengunduh strx25-0.9.2.1.tar.bz2, sehingga nama file yang diunduh juga akan sama.
Alih-alih -O, Anda juga menentukan, “–remote-name” seperti yang ditunjukkan di bawah ini. Keduanya sama.
$ curl --remote-name http://www.openss7.org/repos/tarballs/strx25-0.9.2.1.tar.bz2
Saat curl sedang mengunduh, curl memberikan informasi berguna berikut:
- % – Total % dari unduhan yang selesai sampai sekarang. Ketika mencapai 100%, unduhan selesai. Pada contoh di atas, hanya 28% file yang diunduh.
- Total – Ukuran total file
- Diterima – Ukuran total file yang telah diunduh sejauh ini. Dalam contoh di atas, sejauh ini telah diunduh 1085k (dari total 3762k)
- Xferd – Ini akan digunakan saat Anda mengunggah beberapa file ke server jauh. Saat mengunggah, ini akan menunjukkan ukuran total file yang telah diunggah sejauh ini. Karena kita mengunduh file, dalam contoh ini, ini adalah 0.
- Average Speed Dload – Ini menunjukkan kecepatan download rata-rata.
- Unggahan Kecepatan Rata-Rata – Saat mengunggah file, ini akan menunjukkan kecepatan unggah rata-rata
- Total Waktu – Ini menunjukkan total waktu yang diperlukan untuk mengunduh (atau mengunggah) seluruh file berdasarkan kecepatan unduhan (atau unggah) saat ini. Dalam contoh ini, dibutuhkan kira-kira total 52 detik untuk mengunduh file ini.
- Penghabisan Waktu – Waktu yang dihabiskan curl sejauh ini untuk mengunduh (atau mengunggah) file. Dalam contoh ini, sejauh ini telah menghabiskan 15 detik.
- Waktu yang Tersisa – Ini dihitung berdasarkan “Total Waktu” – “Waktu yang Dihabiskan”.
- Kecepatan Saat Ini – Ini menunjukkan kecepatan unduh/unggah saat ini. Bandingkan ini dengan Average Spped Dload/UPload untuk melihat seberapa cepat atau lambat sistem Anda mengunduh saat ini.
Jika Anda ingin mengunduh file dan menyimpannya dengan nama yang berbeda dari nama file di server jauh, gunakan -o (huruf kecil o) seperti yang ditunjukkan di bawah ini. Ini berguna ketika URL jarak jauh tidak berisi nama file dalam url seperti yang ditunjukkan pada contoh di bawah ini.
$ curl -o taglist.zip http://www.vim.org/scripts/download_script.php?src_id=7701 % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 50243 100 50243 0 0 170k 0 --:--:-- --:--:-- --:--:-- 400k
Dalam contoh di atas, tidak ada nama file di URL jarak jauh, itu hanya memanggil skrip php yang melewati beberapa parameter ke sana. Namun, file akan diunduh dan disimpan sebagai taglist.zip di sistem lokal Anda. Alih-alih -o, Anda juga menentukan, “–output”.
Contoh curl lainnya:15 Contoh Perintah Curl Linux Praktis