cURL-kommando i Linux med 30 praktiske eksempler

cURL-kommandoen i Linux er et kraftfuldt værktøj til at overføre data til eller fra en server ved hjælp af forskellige protokoller, herunder HTTP, HTTPS, FTP og mere. Det bruges almindeligvis til at automatisere webanmodninger, teste API'er og downloade filer fra internettet. cURL er alsidig og kan håndtere en lang række opgaver, fra simple fildownloads til komplekse formularindsendelser i flere dele.

I denne vejledning vil vi udforske 30 praktiske eksempler på brug af kommandoen cURL i Linux. Disse eksempler vil dække almindelige brugssager, såsom download af filer, afsendelse af data til API'er, håndtering af autentificering og mere, hvilket viser fleksibiliteten og kraften i cURL til forskellige opgaver.

Syntaksen for cURL-kommandoen

Før vi fortsætter med at demonstrere 30 eksempler med cURL-kommandoen, er det en god idé først at forstå dens syntaks:

curl [options] [URL]

I denne syntaks:

  • muligheder: Dette er de parametre, der ændrer adfærden for cURL.
  • URL: Dette er adressen på den fil eller ressource, du vil interagere med.

cURL-kommandoindstillinger

cURL tilbyder mange muligheder, der giver dig mulighed for at tilpasse dens adfærd. Her er nogle af de mest brugte muligheder:

  • -O: Downloader filen fra den angivne URL.
  • -I: Henter HTTP-headeren fra serveren.
  • -u: Angiver brugerlegitimationsoplysningerne til servergodkendelse.
  • -d: Sender de angivne data i en POST-anmodning til serveren.
  • -x: Angiver proxyadressen, der skal bruges til anmodningerne.

30 Eksempler på cURL-kommando i Linux

Lad os nu dykke ned i nogle praktiske eksempler på brug af kommandoen cURL. Hvert eksempel vil blive indledt med en forklaring efterfulgt af en demonstration af outputtet.

Eksempel 1: Hentning af data fra en URL

Den mest basale brug af cURL er at hente indholdet af en webside. Sådan kan du gøre det:

curl https://www.example.com

Denne kommando henter HTML-indholdet på websiden på www.example.com.

Eksempel 2: Download af en fil

cURL kan også bruges til at downloade filer fra internettet. Her er et eksempel:

curl -O https://www.example.com/file.txt

Denne kommando downloader filen file.txt fra www.example.com og gemmer den i den aktuelle mappe.

Eksempel 3: Afsendelse af en POST-anmodning

Du kan bruge cURL til at sende POST-anmodninger til en server. Sådan gør du:

curl -d "param1=value1&param2=value2" -X POST http://www.example.com

Denne kommando sender en HTTP POST-anmodning til www.example.com med dataene param1=værdi1¶m2=værdi2.

Eksempel 4: Hentning af HTTP-headere

Hvis du vil hente HTTP-headerne fra en server, kan du bruge -I-indstillingen. Her er et eksempel:

curl -I https://www.example.com

Denne kommando henter HTTP-headerne fra www.example.com.

Eksempel 5: Brug af en proxy

Hvis du skal bruge en proxy, skal du angive den ved hjælp af -x-indstillingen. Sådan gør du:

curl -x http://proxy.example.com:8080 https://www.example.com

Denne kommando sender anmodningen til www.example.com gennem proxyen på proxy.example.com:8080.

Eksempel 6: Afsendelse af cookies

Du kan sende cookies sammen med din anmodning ved at bruge -b-muligheden. Her er et eksempel:

curl -b "name=value" https://www.example.com

Denne kommando sender en cookie med name=value til www.example.com.

Eksempel 7: Sender brugeragent

Websites bruger ofte brugeragenten til at levere indhold, der passer til kundens browser. For at sende en brugeragent med din anmodning skal du bruge -A-indstillingen:

curl -A "Mozilla/5.0" https://www.example.com

Denne kommando sender en anmodning til www.example.com med brugeragenten indstillet som Mozilla/5.0.

Eksempel 8: Følger omdirigeringer

Nogle URL'er omdirigerer til andre URL'er. For at følge disse omdirigeringer skal du bruge -L muligheden:

curl -L https://www.example.com

Denne kommando følger eventuelle omdirigeringer fra www.example.com.

Eksempel 9: Lagring af output til en fil

For at gemme outputtet af en cURL-kommando til en fil, skal du bruge -o-indstillingen:

curl -o output.html https://www.example.com

Denne kommando gemmer output fra www.example.com til output.html.

Eksempel 10: Upload af filer med FTP

cURL kan uploade filer til en server ved hjælp af FTP. Sådan gør du:

curl -T file.txt ftp://ftp.example.com --user username:password

Denne kommando uploader file.txt til ftp.example.com ved hjælp af det angivne brugernavn og adgangskode.

Eksempel 11: Genoptagelse af en download

Hvis en download bliver afbrudt, kan du genoptage den med -C – muligheden:

curl -C - -O https://www.example.com/file.txt

Denne kommando genoptager download af file.txt fra www.example.com.

Eksempel 12: Download af flere filer

For at downloade flere filer skal du angive flere URL'er:

curl -O https://www.example.com/file1.txt -O https://www.example.com/file2.txt

Denne kommando downloader file1.txt og file2.txt fra www.example.com.

Eksempel 13: Afsendelse af en DELETE-anmodning

For at sende en DELETE-anmodning skal du bruge -X DELETE-indstillingen:

curl -X DELETE https://www.example.com/resource

Denne kommando sender en DELETE-anmodning til URL'en www.example.com/ressource.

Eksempel 14: Udførligt output

For detaljerede oplysninger om anmodningen og svaret, brug -v-indstillingen:

curl -v https://www.example.com

Denne kommando giver detaljeret output for anmodningen til www.example.com.

Eksempel 15: Lydløs tilstand

For at undertrykke fremskridtsmåleren og fejlmeddelelser skal du bruge -s muligheden:

curl -s https://www.example.com

Denne kommando henter indholdet af www.example.com i lydløs tilstand.

Eksempel 16: Visning af downloadstatus

For at få vist downloadstatus i et mere læsbart format, skal du bruge #-indstillingen:

curl -# -O https://www.example.com/file.txt

Denne kommando downloader file.txt fra www.example.com og viser status som en statuslinje.

Eksempel 17: Afsendelse af JSON-data

For at sende JSON-data i en POST-anmodning skal du bruge -H-indstillingen til at indstille indholdstypen:

curl -d '{"key1":"value1", "key2":"value2"}' -H "Content-Type: application/json" -X POST https://www.example.com

Denne kommando sender en POST-anmodning med JSON-data til www.example.com.

Eksempel 18: Brug af cURL med en API

cURL bruges ofte til at interagere med API'er. Her er et eksempel:

curl -H "Authorization: Bearer YOUR_TOKEN" https://api.example.com

Denne kommando sender en anmodning til https://api.example.com med en autorisationsheader.

Eksempel 19: Download af filer i baggrunden

For at downloade en fil i baggrunden skal du bruge indstillingen -O med et og-tegn i slutningen:

curl -O https://www.example.com/file.txt &

Denne kommando downloader file.txt fra www.example.com i baggrunden.

Eksempel 20: Afsendelse af data fra en fil

For at sende data fra en fil i en POST-anmodning skal du bruge symbolet @:

curl -d @data.txt -X POST https://www.example.com

Denne kommando sender en POST-anmodning med dataene fra data.txt til www.example.com.

Eksempel 21: Hentning af indhold fra FTP-server

cURL kan bruges til at hente indhold fra en FTP-server. Sådan gør du:

curl ftp://ftp.example.com/file.txt --user username:password

Denne kommando henter file.txt fra ftp.example.com ved at bruge det angivne brugernavn og adgangskode.

Eksempel 22: Hentning af indhold fra en adgangskodebeskyttet hjemmeside

For at hente indhold fra en adgangskodebeskyttet hjemmeside skal du bruge muligheden -u:

curl -u username:password https://www.example.com

Denne kommando henter indholdet fra www.example.com ved hjælp af det angivne brugernavn og password.

Eksempel 23: Hentning af indhold fra et websted med SSL

For at hente indhold fra et websted med SSL skal du bruge -k-indstillingen:

curl -k https://www.example.com

Denne kommando henter indholdet fra www.example.com og ignorerer eventuelle SSL-certifikatadvarsler.

Eksempel 24: Afsendelse af en PUT-anmodning

For at sende en PUT-anmodning skal du bruge -X PUT-indstillingen:

curl -X PUT -d "data" https://www.example.com/resource

Denne kommando sender en PUT-anmodning med data "data" til www.example.com/resource.

Eksempel 25: Hentning af svarhovederne

For kun at hente svaroverskrifterne, brug -I-indstillingen:

curl -I https://www.example.com

Denne kommando henter kun svaroverskrifterne fra www.example.com.

Eksempel 26: Hentning af indhold fra et websted med cookies

For at hente indhold fra et websted med cookies skal du bruge -b muligheden:

curl -b cookies.txt https://www.example.com

Denne kommando henter indholdet fra www.example.com ved hjælp af de cookies, der er gemt i cookies.txt.

Eksempel 27: Hentning af indhold fra et websted med tilpassede overskrifter

For at hente indhold fra et websted med tilpassede overskrifter skal du bruge -H-indstillingen:

curl -H "Custom-Header: Value" https://www.example.com

Eksempel 28: Hentning af indhold fra et websted med en timeout

For at hente indhold fra et websted med timeout skal du bruge -m-indstillingen:

curl -m 10 https://www.example.com

Denne kommando henter indholdet fra www.example.com med en timeout på 10 sekunder.

Eksempel 29: Hentning af indhold fra et websted i detaljeret tilstand

For at hente indhold fra et websted i detaljeret tilstand, skal du bruge -v-indstillingen:

curl -v https://www.example.com

Denne kommando henter indholdet fra www.example.com i detaljeret tilstand og viser detaljerede oplysninger om anmodningen og svaret.

Eksempel 30: Hentning af indhold fra et websted og visning af fremskridtsmåleren

For at hente indhold fra et websted og vise fremdriftsmåleren, skal du bruge -# muligheden:

curl -# https://www.example.com

Denne kommando henter indholdet fra www.example.com og viser statusmåleren.

Konklusion

At mestre cURL-kommandoen med disse praktiske eksempler kan markant forbedre din evne til at interagere med webtjenester, automatisere dataoverførsler og fejlfinde netværksproblemer. Regelmæssig praksis med forskellige cURL-indstillinger og kommandoer vil uddybe din forståelse og gøre dig i stand til at udnytte dets fulde potentiale i dine Linux-arbejdsgange. Nyd den alsidighed og effektivitet, som cURL bringer til dit kommandolinjeværktøj.

Joshua James
Følg mig
Seneste indlæg af Joshua James (se alt)

Skriv en kommentar