Dalam tutorial ini, kita akan melihat curl dan wget, bagaimana untuk memulakan, dan yang paling penting, perbezaan di antara mereka.
Apa itu CURL?
cURL adalah utiliti baris perintah sumber terbuka dan bebas yang membolehkan pengguna memindahkan data dari satu mesin jauh ke mesin yang lain dengan interaksi pengguna yang minimum atau tidak. Penggunaan CURL berlaku di peranti seperti penghala, pencetak, telefon, tablet, pemain media, dan banyak lagi.
Ia menyokong memuat turun dan memuat naik menggunakan protokol seperti HTTP / HTTPS, FTP, SFTP, SCP, IMAP, LDAP / LDAPS, SMB / SMBS, TELNET, POP3, GOPHER, dan banyak lagi.
cURL juga menyediakan proksi, pemindahan resume, pengesahan pengguna, sijil SSL, dan banyak lagi.
Apa itu wget?
GNU Wget, yang biasa disebut wget, adalah utiliti baris perintah percuma untuk memindahkan fail menggunakan HTTP / HTTPS, FTP, dan FTPS. Ia menyediakan ciri seperti muat turun rekursif, kawalan lebar jalur, meneruskan pemindahan yang dibatalkan, muat turun latar belakang, fail dan direktori cermin rekursif, dan banyak lagi.
Bagaimana Memasang cURL dan Wget?
cURL dan wget adalah alat popular yang tersedia dalam pengedaran Linux utama; jika anda tidak memasang salah satu alat, anda menggunakan arahan di bawah untuk memasang:
Debian / Ubuntu:
# pasang cURLsudo pasang-dapatkankerinting
# pasang wget
sudo pasang-dapatkan wget
Gerbang / Manjaro:
# pasang cURLsudopacman-Skerinting
# pasang wget
sudopacman-S wget
REHL / CentOS / Fedora:
# pasang cURLsudo yum pasangkerinting
sudodnfpasangkerinting
# pasang wget
sudo yum pasang wget
sudodnfpasang wget
Bagaimana Menggunakan CURL dan Wget (Contoh Kes Penggunaan)?
Untuk memastikan anda memahami persamaan dan perbezaan antara cURL dan wget, ada baiknya anda melihat beberapa contoh:
Protokol HTTP / HTTPS:
Kedua-dua cURL dan wget menyokong protokol HTTP dan HTTPS. Oleh itu, jika kita memuat turun laman web seperti linuxhint.com:
curl https://linuxhint.com-ataulinuxhint.htmlcurl https://linuxhint.com-ataulinuxhint.html
%Jumlah%Menerima%Xferd Purata Kelajuan Masa Masa Masa Semasa
Muat Turun Beban Jumlah Kelajuan Kiri Dibelanjakan
100256k0256k0 0166k0-: -: -0: 00: 01 -: -: - 166k
Secara lalai, cURL akan mencetak kandungan sumber web di terminal. Kami menggunakan bendera -o untuk mengarahkan output ke fail.
Perkara berikut berlaku untuk wget:
wgethttps://linuxhint.com--2021-06-2005:09:Empat lima- https://linuxhint.com/
Menyelesaikan linuxhint.com(linuxhint.com)... 104.21.58.234, 172.67.209.252,2606:4700:3033::6815: 3aea, ...
Menyambung ke linuxhint.com(linuxhint.com)|104.21.58.234|:443... bersambung.
Permintaan HTTP dihantar, menunggu tindak balas ...200okey
Panjang: tidak ditentukan[teks/html]
Menyimpan ke: 'index.html'
indeks.html
[ <=> ]256.25K 506KB/sdalam0.5s
2021-06-dua puluh05:09:46 (506KB/s)- 'index.html' disimpan[262396]
Wget, sebaliknya, menyimpan sumber yang diminta ke fail.
Adalah baik untuk diperhatikan bahawa kedua-dua alat memuat turun sumber. Perincian kedua-dua fail menunjukkan kedua-dua ukuran fail.
$ls -tempatindex.html linuxhint.html-rw-rw-r-- 1linuxhint linuxhint262396Jun19 lima belas:lima puluhindeks.html
-rw-rw-r-- 1linuxhint linuxhint262396Jundua puluh05:07 linuxhint.html
Protokol FTP:
Kedua-dua cURL dan wget menyokong muat turun pada protokol FTP. Walau bagaimanapun, cURL menyokong memuat naik ke ftp.
Gunakan arahan di bawah untuk memuat turun fail dari pelayan FTP dengan wget:
wget - pengguna= debian- kata laluan= 'Debian' ftp://192.168.0.112/sandaran.zstwget - pengguna= debian- kata laluan='debian'kaki://192.168.0.112/sandaran.zst
--2021-06-2005:29: 06-- ftp://192.168.0.112/sandaran.zst
=>‘Backup.zst’
Menyambung ke 192.168.0.112:dua puluh satu... bersambung.
Pembalakandalam sebagaidebian ... Log masukdalam!
==>SYST ... selesai. ==>JPA ... selesai.
==>JENIS I ... selesai. ==>CWD tidak diperlukan.
==>SIZE backup.zst ... selesai.
==>LULUS ... selesai. ==>RETR backup.zst ... selesai.
sandaran.zst
[ <=> ] 0--.- KB/sdalam0s
2021-06-dua puluh05:29: 06(0.00B/s)- ‘backup.zst’ disimpan[0]
Dengan menggunakan keriting, tambahkan-ubendera sebagai:
kerinting-udebian: debian ‘ftp://192.168.0.112/sandaran.zst ’-atausandaran.zst
kerinting-udebian: debian'ftp://192.168.0.112/backup.zst' -atausandaran.zst
%Jumlah%Menerima%Xferd Purata Kelajuan Masa Masa Masa Semasa
Muat Turun Beban Jumlah Kelajuan Kiri Dibelanjakan
0 0 0 0 0 0 0 0-: -: - -: -: - -: -: -0
Untuk memuat naik afailkekakidengan keriting, kami menggunakan-Tpilihan sebagai:
kerinting-udebian: debian-Tsandaran1.zst ftp://192.168.0.112/kaki/
Pastikan direktori ada dan pengguna mempunyai kebenaran menulis untuknya.
CATATAN: Walaupun cURL menyokong pelbagai jenis protokol, ia tidak menyediakan muat turun berulang. Sebaliknya, Wget menyokong muat turun berulang menggunakan pilihan –recursive kerana kedua-dua protokol HTTP / HTTPS dan FTP / FTPS menawarkan fungsi seperti itu.
Persamaan Antara wget dan cURL
Sekarang untuk lapisan gula pada kek:
- Kedua-dua alat ini menyokong protokol standard seperti HTTP, HTTPS, FTP, FTPS.
- Kedua-dua alat memuat turun fail dari internet.
- Kedua-dua alat ini menyokong kuki HTTP.
- Kedua-dua alat menyokong output ke fail.
- Kedua-dua alat percuma dan dikembangkan secara aktif.
- Kedua-dua alat ini menyokong pemindahan resume.
- Kedua-dua alat ini menyokong HTTP POST.
Perbezaan Antara wget dan cURL
Berikut adalah beberapa perbezaan antara curl dan wget:
- Wget adalah utiliti pemindahan sederhana, sementara curl menawarkan banyak lagi.
- Curl menyediakan perpustakaan libcurl, yang dapat diperluas menjadi aplikasi GUI. Wget, sebaliknya, adalah utiliti baris perintah yang mudah.
- Wget menyokong protokol yang lebih sedikit berbanding cURL.
- Muat turun berulang tidak disokong secara ringkas.
- Wget tersedia secara asli dalam sistem Linux, sementara cURL tersedia dalam sistem Windows.
- cURL menyokong pelbagai pemindahan selari.
- cURL melakukan penyahmampatan HTTP Transfer-Encoded, sementara wget tidak.
- cURL menyokong HTTP dua arah sementara wget menawarkan POST HTTP biasa.
- cURL menyokong lebih banyak kaedah autentikasi HTTP berbanding wget.
- Wget tidak menyokong SOCKS.
- Wget memerlukan gnulib dipasang.
- Tidak seperti ikal, ciri seperti kuki, cap waktu, dan pengalihan ikuti diaktifkan secara lalai dalam wget. cURL menghendaki masing-masing dinyatakan secara jelas.
Kesimpulannya
Tutorial ini memberi tumpuan kepada persamaan dan perbezaan antara cURL. Walaupun sepertinya cURL adalah pilihan yang unggul, ada contoh di mana wget adalah pilihan terbaik.
Nasihat saya kepada anda adalah memilih yang sesuai untuk anda.