GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Was ist ein cURL-Befehl und wie wird er verwendet?

Der cURL-Befehl ist ein wichtiges Linux-Tool, das häufig für die Datenübertragung und Verbindungsfehlersuche verwendet wird. cURL wird von libcurl betrieben, einer kostenlosen URL-Übertragungsbibliothek auf der Client-Seite.

Lassen Sie uns tiefer eintauchen und lernen, wie man es benutzt.

cURL-Version prüfen

Wie bei jedem Linux-Befehl müssen wir uns, bevor wir mit cURL arbeiten, bei unserem VPS anmelden. Wenn Sie Hilfe benötigen, sehen Sie sich dieses Tutorial über SSH an.

Lassen Sie uns zunächst mit dem folgenden Befehl prüfen, welche Version von cURL verfügbar ist:

curl --version

Die Ausgabe zeigt der cURL-Version eine Liste der unterstützten Protokolle. Jetzt können wir uns einige cURL-Befehlsbeispiele ansehen

Grundlegende cURL-Befehlssyntax

Lassen Sie uns lernen, wie man cURL-Befehle verwendet. Die grundlegende Syntax von cURL sieht folgendermaßen aus:

curl [OPTIONS] [URL]

Die einfachste Verwendung von cURL besteht darin, den Inhalt einer Seite anzuzeigen. Das folgende Beispiel rendert die Startseite von testdomain.com .

curl testdomain.com

Dadurch wird der vollständige Quellcode der Homepage für die Domain gerendert. Wenn kein Protokoll angegeben ist, interpretiert curl dies als HTTP.

cURL-Befehlsdateioptionen

cURL-Befehle können Dateien von einem entfernten Standort herunterladen. Sie können dies auf zwei verschiedene Arten tun:

  • -O speichert die Datei im aktuellen Arbeitsverzeichnis mit demselben Dateinamen wie remote.
  • -o können Sie einen anderen Dateinamen oder Speicherort angeben

Ein Beispiel dafür ist wie unten gezeigt:

curl -O http://testdomain.com/testfile.tar.gz

Der obige Befehl speichert dies als testfile.tar.gz .

curl -o newtestfile.tar.gz http://testdomain.com/testfile.tar.gz

Der obige Befehl speichert dies als newtestfile.tar.gz .

Wenn der Download aus irgendeinem Grund unterbrochen wird, können Sie ihn mit cURL fortsetzen. Sie können dies mit dem folgenden Befehl tun:

curl -C - -O  http://testdomain.com/testfile.tar.gz

Mit cURL können wir auch mehrere Dateien herunterladen, wie unten gezeigt:

curl -O http://testdomain.com/testfile.tar.gz -O http://mydomain.com/myfile.tar.gz

Wenn Sie mehrere Dateien von mehreren URLs herunterladen möchten, listen Sie alle in einer Datei auf. cURL-Befehle können mit xargs kombiniert werden, um die verschiedenen URLs herunterzuladen.

Zum Beispiel, wenn wir eine Datei allUrls.txt haben die eine Liste aller herunterzuladenden URLs enthält, dann kann das folgende Beispiel verwendet werden, um alle Dateien herunterzuladen.

xargs –n 1 curl -O < allUrls.txt

cURL-Befehle für HTTP

cURL kann auch verwendet werden, wenn ein Proxy-Server vorhanden ist. Wenn Sie sich hinter einem Proxy-Server befinden, der Port 8090 bei sampleproxy.com abhört, laden Sie die Dateien wie unten gezeigt herunter:

curl -x  sampleproxy.com:8090 -U username:password -O http:// testdomain.com/testfile.tar.gz

Im obigen Beispiel können Sie -U Benutzername:Passwort überspringen wenn der Proxy keine Authentifizierungsmethode erfordert.

Eine typische HTTP-Anforderung enthält immer einen Header. Der HTTP-Header sendet zusammen mit der eigentlichen Anfrage zusätzliche Informationen über den entfernten Webserver. Während Sie die Header-Informationen über die Entwicklertools eines Browsers überprüfen können, können Sie sie mit einem cURL-Befehl überprüfen.

Unten sehen Sie ein Beispiel dafür, wie Header-Informationen von einer Website abgerufen werden.

curl -I www.testdomain.com

Mit cURL können Sie ein GET erstellen und ein POST Anfrage. Ein GET Die Anfrage lautet wie folgt:

curl http://mydomain.com

Ein Beispiel für einen POST Anfrage sieht wie folgt aus:

curl –data “text=Hello” https://myDomain.com/firstPage.jsp

Hier drüben text=Hallo ist der POST-Anforderungsparameter. Dieses Verhalten wäre ähnlich wie bei HTML-Formularen.

Sie können auch mehrere HTTP-Methoden in einem einzigen cURL-Befehl angeben. Verwenden Sie dazu –next Option, etwa so:

curl –data “text=Hello” https://myDomain.com/firstPage.jsp --next https://myDomain.com/displayResult.jsp

Diese enthält eine POST-Anfrage, gefolgt von einer GET-Anfrage.

Jede HTTP-Anforderung hat einen Benutzeragenten, der als Teil der Anforderung gesendet wird. Dies zeigt die Webbrowser-Details des Clients an. Standardmäßig enthält eine cURL-Anforderung curl und die Versionsnummer als Benutzeragentendetails. Eine Beispielausgabe sieht wie folgt aus:

“GET / HTTP/1.1” 200 “_” ”curl/7/29/0”

Sie können diese Standard-User-Agent-Informationen mit dem folgenden Befehl ändern:

curl -I http://mydomain.com –-user-agent “My new Browser”

Jetzt lautet die geänderte Ausgabe:

“GET / HTTP/1.1” 200 “_” ”My new Browser”

cURL für Cookies

cURL-Befehle können verwendet werden, um zu überprüfen, welche Cookies auf eine beliebige URL heruntergeladen werden. Wenn Sie also auf https://www.samplewebsite.com zugreifen , dann können Sie in eine Datei ausgeben, die Cookies speichern und mit cat oder einem VIM-Editor darauf zugreifen.

Unten ist ein Beispiel eines solchen Befehls:

curl --cookie-jar Mycookies.txt https://www.samplewebsite.com /index.html -O

Ebenso können Sie, wenn Sie die Cookies in einer Datei haben, diese an die Website senden. Ein Beispiel für einen solchen Befehl ist unten dargestellt:

curl --cookie Mycookies.txt https://www. samplewebsite.com

cURL für FTP

cURL-Befehl unterstützt FTP! Sie können sie verwenden, um Dateien von einem entfernten Server herunterzuladen.

curl -u username:password -O ftp://sampleftpserver/testfile.tar.gz

Im obigen Befehl ftp://sampleftpserver ist ein FTP-Server, der Verbindungen akzeptiert. Benutzername und Passwort können bei anonymen FTP-Verbindungen übersprungen werden. Geben Sie den Befehl ein und beobachten Sie, wie sich der Fortschrittsbalken füllt.

Sie können Dateien auch mit dem folgenden Befehl hochladen:

curl -u username:password -T testfile.tar.gz ftp://sampleftpserver

Auch hier können wir den Benutzernamen und das Passwort für anonyme FTP-Verbindungen überspringen.

Einschränken der cURL-Ausgabe

Wenn Sie eine cURL verwenden, können Sie nicht wissen, wie groß die Ausgabe sein wird. Sie können die Bandbreite einschränken, um sicherzustellen, dass sie nicht durch cURL gedrosselt wird.

Der folgende Befehl beschränkt die Bandbreite auf 100 KB:

curl --limit-rate 100K http://testdomain.com/samplefile.tar.gz -O

Fazit

cURL ist ein mächtiger und weit verbreiteter Befehl. Es ist nützlich, wenn Sie von der Befehlszeile abhängig sind. Es hat mehrere Optionen und unterstützt mehrere Protokolle. Das ist ein ziemlich guter Grund, diesen Befehl zu lernen!

Denken Sie daran, wenn Sie einige fortgeschrittene Befehle lernen möchten, schlagen Sie einfach im Handbuch nach, das in allen Unix-Versionen enthalten sein sollte:

man curl

Wir hoffen, dass dieses Tutorial Ihnen einen guten Ausgangspunkt für die Verwendung von cURL gegeben hat! Wie werden Sie diesen Befehl verwenden? Lass es uns in den Kommentaren wissen!


Linux
  1. Was ist Umask und wie wird es verwendet?

  2. lspci-Befehl:Was ist das und wie wird es verwendet?

  3. Was ist ein Chown-Befehl unter Linux und wie wird er verwendet?

  4. Chroot „Gefängnis“ – Was ist das und wie benutzt man es?

  5. Was ist E-Mail und wie wird darin navigiert?

So installieren und verwenden Sie den Curl-Befehl unter CentOS 8

So installieren und verwenden Sie den Befehl locate unter Linux

So installieren und verwenden Sie den Ping-Befehl unter Linux

Wie man den DD-Befehl verwendet und wie man ISO damit brennt

So installieren und verwenden Sie den fd-Befehl unter Linux

Was ist EasyApache und wie verwende ich es?