Android

Curl-kommando i linux med eksempler

Help for hacked sites: Assess the damage (hacked with malware)

Help for hacked sites: Assess the damage (hacked with malware)

Indholdsfortegnelse:

Anonim

curl er et kommandolinjeværktøj til overførsel af data fra eller til en server designet til at arbejde uden brugerinteraktion. Med curl kan du downloade eller uploade data ved hjælp af en af ​​de understøttede protokoller, herunder HTTP, HTTPS, SCP, SFTP og FTP. curl giver et antal indstillinger, der giver dig mulighed for at genoptage overførsler, begrænse båndbredde, proxy-support, brugergodkendelse og meget mere.

I denne tutorial vil vi vise dig, hvordan du bruger krølleværktøjet gennem praktiske eksempler og detaljerede forklaringer på de mest almindelige krølleindstillinger.

Installation af Curl

Curl-pakken er forinstalleret på de fleste Linux-distributioner i dag.

For at kontrollere, om Curl-pakken er installeret på dit system, skal du åbne din konsol, skrive curl og trykke på enter. Hvis du har curl installeret, udskriver systemet curl: try 'curl --help' or 'curl --manual' for more information . Ellers ser du noget som curl command not found .

Hvis curl ikke er installeret, kan du nemt installere det ved hjælp af din pakkeadministrator for din distribution.

Installer Curl på Ubuntu og Debian

sudo apt update sudo apt install curl

Installer Curl på CentOS og Fedora

sudo yum install curl

Sådan bruges Curl

Syntaks for curl kommandoen er som følger:

curl

I sin enkleste form viser curl , når den påberåbes uden mulighed, den angivne ressource til standardoutputet.

For at hente example.com startsiden, du example.com Kører:

curl example.com

Kommandoen udskriver kildekoden på example.com hjemmesiden i dit terminalvindue.

Hvis der ikke er angivet nogen protokol, prøver curl at gætte den protokol, du vil bruge, og den vil som standard være HTTP .

Gem output i en fil

For at gemme resultatet af curl kommandoen skal du bruge enten -o eller -O .

Små bogstaver -o gemmer filen med et foruddefineret filnavn, som i eksemplet nedenfor er vue-v2.6.10.js :

curl -o vue-v2.6.10.js

Store bogstaver -O gemmer filen med det originale filnavn:

curl -O

Download flere filer

Hvis du vil downloade flere filer på én gang, skal du bruge flere indstillinger for -O , efterfulgt af URL til den fil, du vil downloade.

I det følgende eksempel downloader vi iso-filerne Arch Linux og Debian:

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

Genoptag en download

Du kan genoptage en download ved hjælp af indstillingen -C - . Dette er nyttigt, hvis din forbindelse falder under download af en stor fil, og i stedet for at starte download fra bunden af, kan du fortsætte med den forrige.

For eksempel, hvis du downloader Ubuntu 18.04 iso-filen ved hjælp af følgende kommando:

curl -O

og pludselig falder din forbindelse, kan du genoptage downloadet med:

curl -C - -O

Hent HTTP-overskrifter for en URL

HTTP-headere er kolon-adskilte nøgleværdipar indeholdende information såsom brugeragent, indholdstype og kodning. Headers sendes mellem klienten og serveren med anmodningen eller svaret.

Brug indstillingen -I til kun at hente HTTP-overskrifterne i den angivne ressource:

curl -I --http2

Indstillingen -L instruerer curl til at følge enhver omdirigering, indtil den når den endelige destination:

curl -L google.com

Skift bruger-agent

Undertiden, når du downloader en fil, kan fjernserveren muligvis indstilles til at blokere Curl User-Agent eller returnere forskellige indhold afhængigt af besøgendeenheden og browseren.

I situationer som dette for at efterligne en anden browser, skal du bruge indstillingen -A .

For eksempel til at emulere Firefox 60 vil du bruge:

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

Angiv en maksimal overførselshastighed

--limit-rate giver dig mulighed for at begrænse dataoverførselshastigheden. Værdien kan udtrykkes i byte, kilobyte med k suffikset, megabyte med m suffikset og gigabyte med g suffikset.

I det følgende eksempel vil curl downloade Go binæren og begrænse downloadhastigheden til 1 mb:

curl --limit-rate 1m -O

Denne mulighed er nyttig for at forhindre, at curl forbruger al den tilgængelige båndbredde.

Overfør filer via FTP

For at få adgang til en beskyttet FTP-server med curl skal du bruge indstillingen -u og angive brugernavn og adgangskode som vist nedenfor:

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

Når du er logget ind, viser kommandoen alle filer og mapper i brugerens hjemmekatalog.

Du kan downloade en enkelt fil fra FTP-serveren ved hjælp af følgende syntaks:

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

Hvis du vil uploade en fil til FTP-serveren, skal du bruge -T efterfulgt af navnet på den fil, du vil uploade:

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

Send cookies

Undertiden skal du muligvis indgive en HTTP-anmodning med specifikke cookies for at få adgang til en ekstern ressource eller for at fejlsøge et problem.

Når der anmodes om en ressource med curl , sendes eller curl ingen cookies som standard.

For at sende cookies til serveren skal du bruge -b skiftet efterfulgt af et filnavn, der indeholder cookies eller en streng.

For at hente Oracle Java JDK rpm-fil jdk-10.0.2_linux-x64_bin.rpm skal du videregive en cookie med navnet oraclelicense med værdien a :

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

Brug af fuldmagter

curl understøtter forskellige typer proxier, herunder HTTP, HTTPS og SOCKS. Hvis du vil overføre data via en proxyserver, skal du bruge indstillingen -x ( --proxy ) efterfulgt af proxy-URL.

Følgende kommando downloader den specificerede ressource ved hjælp af en proxy på 192.168.44.1 port 8888 :

curl -x 192.168.44.1:8888

Hvis proxyserveren kræver godkendelse, skal du bruge indstillingen -U ( --proxy-user ) efterfulgt af brugernavn og adgangskode adskilt af et kolon ( user:password ):

curl -U username:password -x 192.168.44.1:8888

Konklusion

curl er et kommandolinjeværktøj, der giver dig mulighed for at overføre data fra eller til en ekstern vært. Det er nyttigt til fejlfinding af problemer, download af filer med mere.

Eksemplerne vist i denne tutorial er enkle, men demonstrer de mest anvendte curl indstillinger og er beregnet til at hjælpe dig med at forstå, hvordan curl kommandoen fungerer.

For mere information om curl gå til siden Krølledokumentation.

krølleterminal