GNU/Linux >> Belajar Linux >  >> Linux

Cara menggunakan CURL seperti Pro di Linux

Ada beberapa cara untuk mengontrol dan berkomunikasi dengan data di terminal Linux dan curl adalah cara terbaik untuk melakukannya. curl adalah alat baris perintah yang dapat Anda gunakan untuk mentransfer data dari atau ke server. Anda dapat menggunakan curl perintah untuk mendownload dan mengupload data menggunakan salah satu protokol yang didukung, yang terdiri dari  FTP, HTTP,  SFTP, HTTPS, dan SCP. Curl memiliki berbagai fitur, termasuk kemampuan untuk membatasi bandwidth, melanjutkan transfer, autentikasi pengguna,  dukungan untuk server proxy, dan banyak lagi.

Di bawah ini adalah daftar protokol yang saat ini didukung oleh curl :

  • FTP/FTPS
  • Gopher
  • HTTP
  • HTTP/2
  • SMTP/SMTPS
  • IMAP/IMAPS
  • UKM
  • POP3/POP3S
  • RTMP
  • SCP
  • SFTP
  • RTSP
  • LDAP/LDAPS
  • Telnet dan TFTP
  • RTSP

Fitur tambahan meliputi:

  • Otentikasi pengguna dan sandi
    • Dasar
    • Digest Plain
    • NTLM
    • CRAM-MD5
    • Kerberos
    • Negosiasi
  • Kue
  • Penerowongan proxy
  • Lanjutkan operasi transfer file
  • Sertifikat SSL
  • Unggahan formulir HTTP dan HTTPS

wget dan curl sering dibandingkan karena fungsinya tumpang tindih sampai tingkat tertentu. Kedua alat dapat mengambil konten dari Internet tetapi wget memiliki lebih banyak fitur seperti web scraping,  download rekursif serta lebih ramah pengguna. wget dianggap sebagai opsi yang lebih baik jika Anda hanya ingin mengunduh file di terminal.

Mempelajari curl dasar-dasar perintah akan membantu Anda dalam mengunggah dan mengunduh file dengan prosedur otentikasi HTTP tingkat lanjut. Selanjutnya, wget hanya mendukung FTP dan HTTP(S), sedangkan curl mendukung lebih banyak protokol.

Itu saja tentang curl memerintah. Sekarang mari kita langsung ke terminal.

Menginstal 'curl' di Linux

Jika Anda tidak memiliki curl di sistem Linux Anda, Instal dengan menggunakan perintah berikut. Jika tidak, lewati langkah penginstalan dan lanjutkan ke contoh.

sudo apt-get update
sudo apt-get install curl -y

Sekarang, verifikasi curl tersedia di sistem Anda dengan memeriksa versinya:

curl --version

Contoh penggunaan 'curl'

Kita bisa melakukan banyak hal keren menggunakan curl . Mari kita lihat beberapa di antaranya.

Mendapatkan IP eksternal server

Ada sumber daya yang luar biasa di internet, yang memungkinkan Anda mendapatkan alamat IP internet Anda – https://ifconfig.me (dinamai dengan kejayaan utilitas konfigurasi jaringan Linux yang terkenal – ifconfig ).

Jika Anda mengirim permintaan HTTP ke situs itu menggunakan curl, itu akan mengembalikan alamat IP eksternal Anda di terminal dalam bentuk string sederhana:

curl https://ifconfig.me

Jadi, Anda dapat dengan mudah memasukkan hasil ini ke variabel bash:

MY_EXTERNAL_IP=$(curl -s https://ifconfig.me)
echo $MY_EXTERNAL_IP

Ini hasilnya:

Di sini, -s argumen memungkinkan untuk menghindari keluaran kemajuan unduhan curl:

% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                  Dload  Upload   Total   Spent    Left  Speed
 100    12  100    12    0     0    181      0 --:--:-- --:--:-- --:--:--   181

Prakiraan cuaca

Apakah Anda ingin merasa diri Anda seperti peretas dan menampilkan informasi cuaca langsung di terminal? Anda dapat melakukannya menggunakan curl !

curl http://wttr.in/LOCATION

Menyimpan output 'curl' ke file teks

Anda dapat menyimpan output dari curl perintah ke file yang ditentukan.

Berikut ini contoh menyimpan output JSON API (StarWars demo API) ke file:

curl https://swapi.dev/api/planets/1/ -o Tatooine.json

curl cukup pintar untuk mendeteksi unduhan file biner. Berikut ini contoh mengunduh salah satu perangkat lunak manajemen infrastruktur-sebagai-kode sumber terbuka paling populer Terraform (pelajari lebih lanjut tentang Terraform):

curl https://releases.hashicorp.com/terraform/0.15.0/terraform_0.15.0_linux_amd64.zip -o terraform_0.15.0_linux_amd64.zip

Mengunduh banyak file

Anda dapat menggunakan curl untuk mengunduh banyak file sekaligus. Cukup tambahkan -o argumen sebanyak yang Anda butuhkan.

curl -o https://example.com/files/file-1 -o file-2 https://example.com/files/file-2 -o file-3 https://example.com/files/file-3

Membatasi kecepatan unduh

Fitur lain yang berguna dari curl adalah pembatasan kecepatan download file. Anda dapat melakukannya dengan menggunakan --limit-rate argumen dan menentukan tingkat kecepatan:

curl --limit-rate 1M -O https://releases.hashicorp.com/terraform/0.15.0/terraform_0.15.0_linux_amd64.zip

Kecepatan yang diberikan diukur dalam byte/detik, kecuali sufiks ditambahkan. Menambahkan 'k' atau 'K' akan menghitung angka sebagai kilobyte, 'm' atau M' menjadikannya megabyte, sedangkan 'g' atau 'G' menjadikannya gigabyte.

Mengunduh daftar URL

Dalam contoh ini, kami akan mengunduh semua file yang tercantum dalam file teks. Untuk melakukan itu, Anda perlu menggunakan kombinasi xargs dengan curl perintah:

xargs -n 1 curl -O < urllists.txt

Ini hasilnya:

Otentikasi dasar

Anda dapat menggunakan -u argumen untuk memberikan nama pengguna dan kata sandi untuk otentikasi HTTP dasar (otentikasi dasar):

curl -u username:password -O https://example.com/files/README

Mendapatkan header URL

Header HTTP adalah pasangan nilai kunci yang dipisahkan oleh titik dua yang berisi informasi seperti jenis konten sumber daya yang diminta, agen pengguna, pengkodean, dll. Dengan permintaan atau respons, header ditransfer antara klien dan server. Untuk mendapatkan informasi tajuk situs web apa pun, gunakan -I argumen:

curl -I https://hands-on.cloud

Menggunakan cookie

Dalam permintaan berikutnya ke situs web yang sama, Anda mungkin perlu menggunakan cookie.

Untuk menyimpan cookie yang diterima dari server web, gunakan perintah berikut:

curl -s -o /dev/null -c google_cookies.txt 'https://www.google.com'

Berikut argumennya:

  • -s – mode senyap, curl tidak mencetak informasi kemajuan unduhan
  • -o /dev/null – jangan mencetak keluaran halaman web ke terminal
  • -c google_cookies.txt – simpan informasi cookie ke file

Untuk menggunakan cookie yang diterima dari permintaan sebelumnya, gunakan perintah berikut:

curl -b google_cookies.txt 'https://www.google.com'

Memeriksa dukungan HTTP/2

Gunakan -I , --http2 dan -s opsi bersama untuk memverifikasi apakah situs yang ditentukan mendukung header HTTP/2:

curl -I --http2 -s https://hands-on.cloud/ | grep HTTP

Ringkasan

Dalam artikel ini, kami membahas contoh penggunaan curl yang paling umum digunakan memerintah. Kami berharap, artikel ini akan memungkinkan Anda untuk memulai dengan utilitas yang kuat ini. Jika Anda menyukai artikel ini, tolong bantu kami untuk menyebarkannya ke seluruh dunia!


Linux
  1. Bagaimana saya menggunakan cron di Linux

  2. Cara menggunakan FIND di Linux

  3. Cara menggunakan Perintah Su di Linux

  1. Cara menggunakan BusyBox di Linux

  2. Cara menggunakan Google Drive di Linux

  3. Cara menggunakan perintah wget seperti pro di terminal linux

  1. Bagaimana saya menggunakan pengaturan aksesibilitas Linux

  2. Cara menggunakan pkgsrc di Linux

  3. Cara Menggunakan Unzip di Linux