Linux/Mac Terminal Tutorial: How To Use The cURL Command
Inhoudsopgave:
- Curl installeren
- Installeer Curl op Ubuntu en Debian
- Installeer Curl op CentOS en Fedora
- Hoe Curl te gebruiken
- Sla de uitvoer op in een bestand
- Download meerdere bestanden
- Een download hervatten
- Download de HTTP-headers van een URL
- Wijzig de User-Agent
- Geef een maximale overdrachtssnelheid op
- Bestanden overzetten via FTP
- Verzend cookies
- Proxy's gebruiken
- Conclusie
curl
is een opdrachtregelhulpprogramma voor het overbrengen van gegevens van of naar een server die is ontworpen om zonder gebruikersinteractie te werken. Met
curl
kunt u gegevens downloaden of uploaden met behulp van een van de ondersteunde protocollen, waaronder HTTP, HTTPS, SCP, SFTP en FTP.
curl
biedt een aantal opties waarmee u overdrachten kunt hervatten, de bandbreedte, proxy-ondersteuning, gebruikersauthenticatie en nog veel meer kunt beperken.
In deze zelfstudie laten we u zien hoe u de krultool kunt gebruiken door praktische voorbeelden en gedetailleerde uitleg van de meest voorkomende krulopties.
Curl installeren
Het curl-pakket is vandaag vooraf geïnstalleerd op de meeste Linux-distributies.
Om te controleren of het Curl-pakket op uw systeem is geïnstalleerd, opent u uw console, typt u
curl
en drukt u op Enter. Als
curl
geïnstalleerd, zal het systeem
curl: try 'curl --help' or 'curl --manual' for more information
afdrukken
curl: try 'curl --help' or 'curl --manual' for more information
. Anders ziet u zoiets als
curl command not found
.
Als
curl
niet is geïnstalleerd, kunt u het eenvoudig installeren met behulp van de pakketbeheerder van uw distributie.
Installeer Curl op Ubuntu en Debian
sudo apt update
sudo apt install curl
Installeer Curl op CentOS en Fedora
Hoe Curl te gebruiken
De syntaxis voor de opdracht
curl
is als volgt:
curl
In zijn eenvoudigste vorm, wanneer opgeroepen zonder enige optie, geeft
curl
de opgegeven bron weer naar de standaarduitvoer.
Als u bijvoorbeeld de startpagina van
example.com
wilt ophalen, zou u:
curl example.com
Met de opdracht wordt de broncode van de startpagina van
example.com
in uw terminalvenster afgedrukt.
Als er geen protocol is opgegeven, probeert
curl
het protocol te raden dat u wilt gebruiken en wordt standaard
HTTP
.
Sla de uitvoer op in een bestand
Gebruik de optie
-o
of
-O
om het resultaat van de opdracht
curl
te slaan.
Kleine letters
-o
slaat het bestand op met een vooraf gedefinieerde bestandsnaam, die in het onderstaande voorbeeld
vue-v2.6.10.js
:
curl -o vue-v2.6.10.js
Hoofdletter
-O
bewaart het bestand met de originele bestandsnaam:
Download meerdere bestanden
Als u meerdere bestanden tegelijk wilt downloaden, gebruikt u meerdere
-O
opties, gevolgd door de URL naar het bestand dat u wilt downloaden.
In het volgende voorbeeld downloaden we de arch Linux- en Debian ISO-bestanden:
curl -O http://mirrors.edge.kernel.org/archlinux/iso/2018.06.01/archlinux-2018.06.01-x86_64.iso \
-O
Een download hervatten
U kunt een download hervatten met de optie
-C -
. Dit is handig als uw verbinding wordt verbroken tijdens het downloaden van een groot bestand en in plaats van helemaal opnieuw te beginnen met downloaden, kunt u doorgaan met de vorige.
Als u bijvoorbeeld het isobestand Ubuntu 18.04 downloadt met de volgende opdracht:
curl -O
en plotseling verbreekt je verbinding kun je de download hervatten met:
Download de HTTP-headers van een URL
HTTP-headers zijn door dubbele punten gescheiden sleutel / waarde-paren die informatie bevatten zoals user-agent, inhoudstype en codering. Headers worden doorgegeven tussen de client en de server met het verzoek of de reactie.
Gebruik de optie
-I
om alleen de HTTP-headers van de opgegeven bron op te halen:
curl -I --http2
De optie
-L
instrueert
curl
om elke omleiding te volgen totdat deze de eindbestemming bereikt:
Wijzig de User-Agent
Soms kan bij het downloaden van een bestand de externe server worden ingesteld om de Curl User-Agent te blokkeren of om verschillende inhoud te retourneren, afhankelijk van het bezoekersapparaat en de browser.
Gebruik in dergelijke situaties om een andere browser te emuleren de optie
-A
.
Om bijvoorbeeld Firefox 60 te emuleren, zou u het volgende gebruiken:
curl -A "Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Firefox/60.0"
Geef een maximale overdrachtssnelheid op
Met de optie
--limit-rate
kunt u de gegevensoverdrachtsnelheid beperken. De waarde kan worden uitgedrukt in bytes, kilobytes met het achtervoegsel
k
, megabytes met het achtervoegsel
m
en gigabytes met het achtervoegsel
g
.
In het volgende voorbeeld downloadt
curl
het binaire bestand Go en beperkt de downloadsnelheid tot 1 mb:
curl --limit-rate 1m -O
Deze optie is handig om te voorkomen dat
curl
alle beschikbare bandbreedte verbruiken.
Bestanden overzetten via FTP
Om toegang te krijgen tot een beveiligde FTP-server met
curl
, gebruikt u de optie
-u
en geeft u de gebruikersnaam en het wachtwoord op zoals hieronder wordt weergegeven:
curl -u FTP_USERNAME:FTP_PASSWORD ftp://ftp.example.com/
Eenmaal ingelogd, toont de opdracht alle bestanden en mappen in de thuismap van de gebruiker.
U kunt een enkel bestand downloaden van de FTP-server met de volgende syntaxis:
curl -u FTP_USERNAME:FTP_PASSWORD ftp://ftp.example.com/file.tar.gz
Om een bestand naar de FTP-server te uploaden, gebruikt u de
-T
gevolgd door de naam van het bestand dat u wilt uploaden:
curl -T newfile.tar.gz -u FTP_USERNAME:FTP_PASSWORD ftp://ftp.example.com/
Verzend cookies
Soms moet u een HTTP-verzoek met specifieke cookies indienen om toegang te krijgen tot een externe bron of om een probleem op te lossen.
Bij het aanvragen van een resource met
curl
worden standaard geen cookies verzonden of opgeslagen.
Om cookies naar de server te sturen, gebruikt u de schakelaar
-b
gevolgd door een bestandsnaam met de cookies of een string.
Om bijvoorbeeld het Oracle Java JDK rpm-bestand
jdk-10.0.2_linux-x64_bin.rpm
te downloaden, moet u een cookie met de naam
oraclelicense
met de waarde
a
oraclelicense
:
curl -L -b "oraclelicense=a" -O
Proxy's gebruiken
curl
ondersteunt verschillende soorten proxy's, waaronder HTTP, HTTPS en SOCKS. Om gegevens over te dragen via een proxyserver, gebruikt u de optie
-x
(
--proxy
), gevolgd door de proxy-URL.
De volgende opdracht downloadt de opgegeven bron met behulp van een proxy op
192.168.44.1
poort
8888
:
curl -x 192.168.44.1:8888
Als de proxyserver verificatie vereist, gebruikt u de optie
-U
(
--proxy-user
) gevolgd door de gebruikersnaam en het wachtwoord gescheiden door een dubbele punt (
user:password
):
curl -U username:password -x 192.168.44.1:8888
Conclusie
curl
is een opdrachtregelprogramma waarmee u gegevens van of naar een externe host kunt overzetten. Het is handig voor het oplossen van problemen, het downloaden van bestanden en meer.
De voorbeelden in deze zelfstudie zijn eenvoudig, maar tonen de meest gebruikte
curl
en zijn bedoeld om u te helpen begrijpen hoe de opdracht
curl
werkt.
Ga voor meer informatie over
curl
naar de Curl-documentatiepagina.
Linux snijd commando met voorbeelden
Knippen is een opdrachtregelhulpprogramma waarmee u delen van lijnen uit gespecificeerde bestanden of piped-gegevens kunt knippen en het resultaat naar standaarduitvoer kunt afdrukken. In deze zelfstudie laten we u zien hoe u het Linux-knipcommando kunt gebruiken door praktische voorbeelden en gedetailleerde uitleg van de meest voorkomende knipopties.
Linux-datumopdracht met voorbeelden
Met de opdracht date wordt de systeemdatum weergegeven of ingesteld. Het wordt meestal gebruikt om de datum en tijd in verschillende formaten af te drukken en toekomstige en afgelopen datums te berekenen.
Linux ip commando met voorbeelden
De opdracht ip is een krachtig hulpmiddel voor het configureren van netwerkinterfaces. Het kan worden gebruikt om interfaces omhoog of omlaag te brengen, adressen en routes toe te wijzen en te verwijderen, ARP-cache te beheren en nog veel meer.