Android

Curbați comanda în linux cu exemple

Linux/Mac Terminal Tutorial: How To Use The cURL Command

Linux/Mac Terminal Tutorial: How To Use The cURL Command

Cuprins:

Anonim

curl este o utilitate pentru linia de comandă pentru transferul datelor de pe sau către un server proiectat să funcționeze fără interacțiunea utilizatorului. Cu curl , puteți descărca sau încărca date folosind unul dintre protocoalele acceptate, inclusiv HTTP, HTTPS, SCP, SFTP și FTP. curl oferă o serie de opțiuni care vă permit să reluați transferurile, să limiteze lățimea de bandă, suport proxy, autentificare pentru utilizatori și multe altele.

În acest tutorial, vă vom arăta cum să folosiți instrumentul de ondulare prin exemple practice și explicații detaliate ale celor mai comune opțiuni de ondulare.

Instalarea Curlului

Pachetul de curl este preinstalat în majoritatea distribuțiilor Linux azi.

Pentru a verifica dacă pachetul Curl este instalat pe sistemul dvs., deschideți consola, tastați curl și apăsați Enter. Dacă aveți curl instalat, sistemul va imprima curl: try 'curl --help' or 'curl --manual' for more information . Altfel, veți vedea ceva de genul curl command not found .

Dacă curl nu este instalată, o puteți instala cu ușurință folosind managerul de pachete al distribuției dvs.

Instalați Curl pe Ubuntu și Debian

sudo apt update sudo apt install curl

Instalați Curl pe CentOS și Fedora

sudo yum install curl

Cum se utilizează ondularea

Sintaxa pentru comanda curl este următoarea:

curl

În cea mai simplă formă, atunci când este invocat fără nicio opțiune, curl afișează resursa specificată la ieșirea standard.

De exemplu, pentru a prelua pagina de homepage example.com ați rula:

curl example.com

Comanda va imprima codul sursă al paginii de start example.com în fereastra terminalului.

Dacă nu este specificat niciun protocol, curl încearcă să ghicească protocolul pe care doriți să îl utilizați, iar acesta va fi implicit la HTTP .

Salvați ieșirea într-un fișier

Pentru a salva rezultatul comenzii curl , folosiți -o sau -O .

Minuscule -o salvează fișierul cu un nume de fișier predefinit, care în exemplul de mai jos este vue-v2.6.10.js :

curl -o vue-v2.6.10.js

Maycase -O salvează fișierul cu numele său de fișier original:

curl -O

Descărcați mai multe fișiere

Pentru a descărca mai multe fișiere simultan, utilizați mai multe opțiuni -O , urmate de adresa URL a fișierului pe care doriți să îl descărcați.

În exemplul următor descărcăm fișierele ISO Linux Linux și Debian:

curl -O http://mirrors.edge.kernel.org/archlinux/iso/2018.06.01/archlinux-2018.06.01-x86_64.iso \ -O

Reluați o descărcare

Puteți relua o descărcare utilizând opțiunea -C - . Acest lucru este util dacă conexiunea dvs. scade în timpul descărcării unui fișier mare, iar în loc de a începe descărcarea de la zero, îl puteți continua pe cel anterior.

De exemplu, dacă descărcați fișierul ISO Ubuntu 18.04 folosind următoarea comandă:

curl -O

iar brusc conexiunea dvs. scade, puteți relua descărcarea cu:

curl -C - -O

Obțineți anteturile HTTP ale unei adrese URL

Anteturile HTTP sunt perechi cheie-valoare separate de colon care conțin informații precum agentul utilizatorului, tipul de conținut și codificarea. Anteturile sunt trecute între client și server cu solicitarea sau răspunsul.

Utilizați opțiunea -I pentru a obține doar anteturile HTTP ale resursei specificate:

curl -I --http2

Opțiunea -L curl să urmeze orice redirecționare până când ajunge la destinația finală:

curl -L google.com

Modificați User-Agent

Uneori, atunci când descărcați un fișier, serverul de la distanță poate fi setat să blocheze Curl User-Agent sau să returneze conținut diferit în funcție de dispozitivul vizitator și browser.

În situații de acest fel pentru a emula un browser diferit, utilizați opțiunea -A .

De exemplu, pentru a emula Firefox 60, ați folosi:

curl -A "Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Firefox/60.0"

Specificați o rată de transfer maximă

Opțiunea --limit-rate vă permite să limitați rata de transfer de date. Valoarea poate fi exprimată în octeți, kilobiți cu sufixul k , megabite cu sufixul m și gigabyte cu sufixul g .

În următorul exemplu, curl va descărca binarul Go și va limita viteza de descărcare la 1 mb:

curl --limit-rate 1m -O

Această opțiune este utilă pentru a preveni consumul de curl toată lățimea de bandă disponibilă.

Transfer de fișiere prin FTP

Pentru a accesa un server FTP protejat cu curl , utilizați opțiunea -u și specificați numele de utilizator și parola, așa cum se arată mai jos:

curl -u FTP_USERNAME:FTP_PASSWORD ftp://ftp.example.com/

Odată conectat, comanda listează toate fișierele și directoarele din directorul de acasă al utilizatorului.

Puteți descărca un singur fișier de pe serverul FTP folosind următoarea sintaxă:

curl -u FTP_USERNAME:FTP_PASSWORD ftp://ftp.example.com/file.tar.gz

Pentru a încărca un fișier pe serverul FTP, utilizați -T urmată de numele fișierului pe care doriți să îl încărcați:

curl -T newfile.tar.gz -u FTP_USERNAME:FTP_PASSWORD ftp://ftp.example.com/

Trimite cookie-uri

Uneori este posibil să fie nevoie să efectuați o solicitare HTTP cu anumite cookie-uri pentru a accesa o resursă de la distanță sau pentru a depana o problemă.

În mod implicit, atunci când solicitați o resursă cu curl , nu sunt trimise sau stocate cookie-uri.

Pentru a trimite cookie-uri pe server, utilizați comutatorul -b urmat de un nume de fișier care conține cookie-uri sau un șir.

De exemplu, pentru a descărca fișierul rpm Oracle Java JDK rpm jdk-10.0.2_linux-x64_bin.rpm va trebui să treceți un cookie numit oraclelicense cu valoarea a :

curl -L -b "oraclelicense=a" -O

Utilizarea Proxies

curl acceptă diferite tipuri de proxy, inclusiv HTTP, HTTPS și SOCKS. Pentru a transfera date printr-un server proxy, utilizați opțiunea -x ( --proxy ), urmată de adresa URL proxy.

Următoarea comandă descarcă resursa specificată folosind un proxy pe portul 8888 192.168.44.1 :

curl -x 192.168.44.1:8888

Dacă serverul proxy necesită autentificare, utilizați opțiunea -U ( --proxy-user ) urmată de numele de utilizator și de parolă separate de un punct ( user:password ):

curl -U username:password -x 192.168.44.1:8888

Concluzie

curl este un instrument de linie de comandă care vă permite să transferați date de la sau la o gazdă la distanță. Este util pentru rezolvarea problemelor, descărcarea fișierelor și multe altele.

Exemplele prezentate în acest tutorial sunt simple, dar demonstrează cele mai utilizate opțiuni de curl și sunt menite să vă ajute să înțelegeți cum funcționează comanda de curl .

Pentru mai multe informații despre curl accesați pagina Documentație Curl.

terminal de ondulare