How to use CURL on Windows | How to test API with CURL | CURL Basics Step by Step
Inhaltsverzeichnis:
- Curl installieren
- Installieren Sie Curl unter Ubuntu und Debian
- Installieren Sie Curl auf CentOS und Fedora
- So verwenden Sie Curl
- Speichern Sie die Ausgabe in eine Datei
- Laden Sie mehrere Dateien herunter
- Einen Download fortsetzen
- Holen Sie sich die HTTP-Header einer URL
- Ändern Sie den User-Agent
- Geben Sie eine maximale Übertragungsrate an
- Übertragen Sie Dateien per FTP
- Senden Sie Cookies
- Proxies verwenden
- Fazit
curl
ist ein Befehlszeilenprogramm zum Übertragen von Daten von oder zu einem Server, das für den Betrieb ohne Benutzerinteraktion entwickelt wurde. Mit
curl
können Sie Daten mithilfe eines der unterstützten Protokolle herunterladen oder hochladen, einschließlich HTTP, HTTPS, SCP, SFTP und FTP.
curl
bietet eine Reihe von Optionen, mit denen Sie die Übertragung fortsetzen, die Bandbreite begrenzen, die Proxy-Unterstützung, die Benutzerauthentifizierung und vieles mehr.
In diesem Tutorial zeigen wir Ihnen anhand von praktischen Beispielen und detaillierten Erklärungen der gebräuchlichsten Curl-Optionen, wie Sie das Curl-Werkzeug verwenden.
Curl installieren
Das curl-Paket ist heute auf den meisten Linux-Distributionen vorinstalliert.
Um zu überprüfen, ob das Curl-Paket auf Ihrem System installiert ist, öffnen Sie Ihre Konsole, geben Sie
curl
und drücken Sie die Eingabetaste. Wenn Sie
curl
installiert haben, druckt das System
curl: try 'curl --help' or 'curl --manual' for more information
. Andernfalls wird der
curl command not found
.
Wenn
curl
nicht installiert ist, können Sie es einfach mit dem Paketmanager Ihrer Distribution installieren.
Installieren Sie Curl unter Ubuntu und Debian
sudo apt update
sudo apt install curl
Installieren Sie Curl auf CentOS und Fedora
So verwenden Sie Curl
Die Syntax für den Befehl
curl
lautet wie folgt:
curl
In der einfachsten Form zeigt
curl
beim Aufrufen ohne Option die angegebene Ressource für die Standardausgabe an.
Um beispielsweise die Homepage von
example.com
abzurufen, würden Sie Folgendes ausführen:
curl example.com
Der Befehl druckt den Quellcode der Homepage von
example.com
in Ihrem Terminalfenster.
Wenn kein Protokoll angegeben ist, versucht
curl
, das gewünschte Protokoll zu erraten, und standardmäßig wird
HTTP
.
Speichern Sie die Ausgabe in eine Datei
Verwenden Sie die Option
-o
oder
-O
um das Ergebnis des Befehls
curl
zu speichern.
Kleinbuchstaben
-o
speichert die Datei mit einem vordefinierten Dateinamen, der im folgenden Beispiel
vue-v2.6.10.js
:
curl -o vue-v2.6.10.js
Großbuchstaben
-O
speichert die Datei unter ihrem ursprünglichen Dateinamen:
Laden Sie mehrere Dateien herunter
Verwenden Sie zum gleichzeitigen Herunterladen mehrerer Dateien die Option
-O
, gefolgt von der URL zu der Datei, die Sie herunterladen möchten.
Im folgenden Beispiel laden wir die Arch Linux- und Debian-ISO-Dateien herunter:
curl -O http://mirrors.edge.kernel.org/archlinux/iso/2018.06.01/archlinux-2018.06.01-x86_64.iso \
-O
Einen Download fortsetzen
Sie können den Download mit der Option
-C -
. Dies ist nützlich, wenn Ihre Verbindung während des Herunterladens einer großen Datei unterbrochen wird und Sie den Download nicht von Grund auf neu starten, sondern die vorherige fortsetzen können.
Wenn Sie beispielsweise die Ubuntu 18.04-ISO-Datei mit dem folgenden Befehl herunterladen:
curl -O
und plötzlich fällt Ihre Verbindung ab, mit der Sie den Download fortsetzen können:
Holen Sie sich die HTTP-Header einer URL
HTTP-Header sind durch Doppelpunkte getrennte Schlüssel-Wert-Paare, die Informationen wie Benutzerprogramm, Inhaltstyp und Codierung enthalten. Header werden mit der Anforderung oder der Antwort zwischen dem Client und dem Server übergeben.
Verwenden Sie die Option
-I
, um nur die HTTP-Header der angegebenen Ressource abzurufen:
curl -I --http2
Die Option
-L
weist
curl
an, jeder Umleitung zu folgen, bis das endgültige Ziel erreicht ist:
Ändern Sie den User-Agent
Beim Herunterladen einer Datei kann es vorkommen, dass der Remote-Server den Curl User-Agent blockiert oder je nach Besuchergerät und Browser unterschiedliche Inhalte zurückgibt.
Verwenden Sie in
-A
Situationen die Option
-A
, um einen anderen Browser zu emulieren.
Um beispielsweise Firefox 60 zu emulieren, würden Sie Folgendes verwenden:
curl -A "Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Firefox/60.0"
Geben Sie eine maximale Übertragungsrate an
Mit
--limit-rate
Option
--limit-rate
können Sie die Datenübertragungsrate begrenzen. Der Wert kann in Bytes, Kilobytes mit dem Suffix
k
, Megabytes mit dem Suffix
m
und Gigabytes mit dem Suffix
g
.
Im folgenden Beispiel lädt
curl
die Go-Binärdatei herunter und begrenzt die Download-Geschwindigkeit auf 1 MB:
curl --limit-rate 1m -O
Diese Option ist nützlich, um zu verhindern, dass das
curl
die gesamte verfügbare Bandbreite beansprucht.
Übertragen Sie Dateien per FTP
Um mit
curl
auf einen geschützten FTP-Server zuzugreifen, verwenden Sie die Option
-u
und geben Sie den Benutzernamen und das Kennwort wie folgt ein:
curl -u FTP_USERNAME:FTP_PASSWORD ftp://ftp.example.com/
Nach dem Anmelden listet der Befehl alle Dateien und Verzeichnisse im Ausgangsverzeichnis des Benutzers auf.
Sie können eine einzelne Datei mit der folgenden Syntax vom FTP-Server herunterladen:
curl -u FTP_USERNAME:FTP_PASSWORD ftp://ftp.example.com/file.tar.gz
Verwenden Sie zum Hochladen einer Datei auf den FTP-Server
-T
gefolgt vom Namen der Datei, die Sie hochladen möchten:
curl -T newfile.tar.gz -u FTP_USERNAME:FTP_PASSWORD ftp://ftp.example.com/
Senden Sie Cookies
Manchmal müssen Sie möglicherweise eine HTTP-Anfrage mit bestimmten Cookies stellen, um auf eine Remote-Ressource zuzugreifen oder ein Problem zu beheben.
Standardmäßig werden beim Anfordern einer Ressource mit
curl
keine Cookies gesendet oder gespeichert.
Verwenden Sie zum Senden von Cookies an den Server die
-b
, gefolgt von einem Dateinamen, der die Cookies oder eine Zeichenfolge enthält.
Um beispielsweise die Oracle Java JDK
jdk-10.0.2_linux-x64_bin.rpm
Datei
jdk-10.0.2_linux-x64_bin.rpm
Sie ein Cookie mit dem Namen
oraclelicense
mit dem Wert
a
:
curl -L -b "oraclelicense=a" -O
Proxies verwenden
curl
unterstützt verschiedene Arten von Proxys, einschließlich HTTP, HTTPS und SOCKS. Verwenden Sie zum Übertragen von Daten über einen Proxyserver die Option
-x
(
--proxy
), gefolgt von der Proxy-URL.
Mit dem folgenden Befehl wird die angegebene Ressource über einen Proxy auf
192.168.44.1
Port
8888
heruntergeladen:
curl -x 192.168.44.1:8888
Wenn der Proxyserver eine Authentifizierung erfordert, verwenden Sie die Option
-U
(
--proxy-user
), gefolgt von Benutzername und Kennwort, die durch einen Doppelpunkt (
user:password
) getrennt sind:
curl -U username:password -x 192.168.44.1:8888
Fazit
curl
ist ein Befehlszeilenprogramm, mit dem Sie Daten von oder zu einem Remote-Host übertragen können. Es ist hilfreich bei der Fehlerbehebung, beim Herunterladen von Dateien und vielem mehr.
Die in diesem Lernprogramm gezeigten Beispiele sind einfach, zeigen jedoch die am häufigsten verwendeten
curl
Optionen und sollen Ihnen dabei helfen, die Funktionsweise des
curl
Befehls zu verstehen.
Weitere Informationen zu
curl
Sie auf der Seite Curl Documentation.
Probleme mit hohen DPI mit Remote Desktop unter Windows 10 beheben
Es kann zu Problemen mit Remote Desktop mit hohen DPI-Problemen bei Einzel- und Mehrfachmonitor-Setups kommen unter Windows 10 v1703 ein sehr heikles Problem sein.
Wie installiere und verwende ich curl unter Debian 10 Linux?
Curl ist ein Befehlszeilenprogramm, mit dem Sie Daten von oder zu einem Remote-Server übertragen können.
Installation und Verwendung von curl unter Ubuntu 18.04
Curl ist ein Befehlszeilenprogramm, mit dem Sie Daten von oder zu einem Remote-Server übertragen können. In diesem Tutorial zeigen wir Ihnen, wie Sie Curl unter Ubuntu 18.04 installieren.