Android

Curl-kommando i linux med eksempler

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

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

Innholdsfortegnelse:

Anonim

curl er et kommandolinjeverktøy for overføring av data fra eller til en server designet for å fungere uten brukerinteraksjon. Med curl kan du laste ned eller laste opp data ved å bruke en av de støttede protokollene inkludert HTTP, HTTPS, SCP, SFTP og FTP. curl gir en rekke alternativer som lar deg gjenoppta overføringer, begrense båndbredden, proxy-støtte, brukerautentisering og mye mer.

I denne opplæringen vil vi vise deg hvordan du bruker krøllverktøyet gjennom praktiske eksempler og detaljerte forklaringer på de vanligste krøllalternativene.

Installere Curl

Krøllpakken er forhåndsinstallert på de fleste Linux-distribusjoner i dag.

For å sjekke om Curl-pakken er installert på systemet ditt, åpner du konsollen, skriver curl og trykker enter. Hvis du har installert curl , vil systemet skrive ut curl: try 'curl --help' or 'curl --manual' for more information . Ellers vil du se noe som curl command not found .

Hvis curl ikke er installert, kan du enkelt installere det ved å bruke pakkehåndtereren til distribusjonen.

Installer Curl på Ubuntu og Debian

sudo apt update sudo apt install curl

Installer Curl på CentOS og Fedora

sudo yum install curl

Hvordan bruke krøll

Syntaks for curl kommandoen er som følger:

curl

I sin enkleste form, når påkaldt uten noe alternativ, viser curl den angitte ressursen til standardutgangen.

For å hente example.com hjemmesiden du vil kjøre:

curl example.com

Kommandoen vil skrive ut kildekoden til hjemmesiden til example.com i terminalvinduet.

Hvis ingen protokoll er spesifisert, prøver curl å gjette protokollen du vil bruke, og den vil som standard være HTTP .

Lagre utdataene i en fil

For å lagre resultatet av curl , bruk enten -o eller -O alternativet.

Små bokstaver -o lagrer filen med et forhåndsdefinert filnavn, som i eksemplet nedenfor er vue-v2.6.10.js :

curl -o vue-v2.6.10.js

Store bokstaver -O lagrer filen med det opprinnelige filnavnet:

curl -O

Last ned flere filer

Hvis du vil laste ned flere filer samtidig, bruker du flere -O alternativer, etterfulgt av URL til filen du vil laste ned.

I det følgende eksemplet laster vi ned Arch Linux- og Debian-isofilene:

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

Fortsett nedlastingen

Du kan fortsette en nedlasting ved å bruke alternativet -C - . Dette er nyttig hvis tilkoblingen din faller under nedlastingen av en stor fil, og i stedet for å starte nedlastingen fra bunnen av, kan du fortsette den forrige.

Hvis du for eksempel laster ned Ubuntu 18.04 iso-filen ved å bruke følgende kommando:

curl -O

og plutselig synker forbindelsen, kan du fortsette nedlastingen med:

curl -C - -O

Få HTTP-overskrifter for en URL

HTTP-overskrifter er kolonneparerte nøkkelverdipar som inneholder informasjon som brukeragent, innholdstype og koding. Overskrifter føres mellom klienten og serveren med forespørselen eller svaret.

Bruk alternativet -I for å hente bare HTTP-overskrifter for den angitte ressursen:

curl -I --http2

Alternativet -L instruerer curl å følge eventuelle omdirigeringer til den når det endelige målet:

curl -L google.com

Endre User-Agent

Noen ganger når den lastes ned en fil, kan den eksterne serveren være satt til å blokkere Curl User-Agent eller til å returnere annet innhold avhengig av besøksenheten og nettleseren.

I situasjoner som dette for å etterligne en annen nettleser, bruk alternativet -A .

For å emulere Firefox 60 vil du for eksempel bruke:

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

Spesifiser en maksimal overføringshastighet

Alternativet - --limit-rate lar deg begrense dataoverføringshastigheten. Verdien kan uttrykkes i byte, kilobyte med k suffikset, megabyte med m suffikset, og gigabyte med g suffikset.

I det følgende eksemplet vil curl laste ned Go-binæren og begrense nedlastingshastigheten til 1 mb:

curl --limit-rate 1m -O

Dette alternativet er nyttig for å forhindre at curl forbruker all tilgjengelig båndbredde.

Overfør filer via FTP

For å få tilgang til en beskyttet FTP-server med curl , bruk alternativet -u og angi brukernavn og passord som vist nedenfor:

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

Når du er logget på, lister kommandoen alle filer og kataloger i brukerens hjemmekatalog.

Du kan laste ned en enkelt fil fra FTP-serveren ved hjelp av følgende syntaks:

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

Hvis du vil laste opp en fil til FTP-serveren, bruker du -T etterfulgt av navnet på filen du vil laste opp:

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

Send informasjonskapsler

Noen ganger kan det hende du må lage en HTTP-forespørsel med spesifikke informasjonskapsler for å få tilgang til en ekstern ressurs eller for å feilsøke et problem.

Som standard blir ingen cookies sendt eller lagret når du ber om en ressurs med curl .

For å sende informasjonskapsler til serveren, bruk bryteren -b etterfulgt av et filnavn som inneholder informasjonskapslene eller en streng.

For å laste ned Oracle Java JDK o / min-fil jdk-10.0.2_linux-x64_bin.rpm må du for eksempel sende en cookie med navnet oraclelicense med verdien a :

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

Bruker fullmakter

curl støtter forskjellige typer proxy, inkludert HTTP, HTTPS og SOCKS. For å overføre data via en proxy-server bruker du alternativet -x (- --proxy ), etterfulgt av proxy-URL.

Følgende kommando laster ned den spesifiserte ressursen ved å bruke en proxy på 192.168.44.1 port 8888 :

curl -x 192.168.44.1:8888

Hvis proxy-serveren krever godkjenning, bruk alternativet -U (- --proxy-user ) etterfulgt av brukernavn og passord skilt av et kolon ( user:password ):

curl -U username:password -x 192.168.44.1:8888

Konklusjon

curl er et kommandolinjeverktøy som lar deg overføre data fra eller til en ekstern vert. Det er nyttig for feilsøking av problemer, nedlasting av filer og mer.

Eksemplene som vises i denne opplæringen er enkle, men demonstrerer de mest brukte curl og er ment å hjelpe deg å forstå hvordan curl fungerer.

For mer informasjon om curl besøk siden Curl Documentation.

krøllterminal