Was ist der curl-Befehl in Linux und was können Sie damit tun?
Der curl-Befehl in Linux ist eine großartige Möglichkeit, den Prozess des Hoch- und Herunterladens von Daten von einem Server zu automatisieren. Curl unterstützt alle wichtigen Protokolle wie HTTP, HTTPS, SFTP, FTP und mehr.
Funktionen wie das Anhalten und Fortsetzen von Übertragungen, Bandbreitenbegrenzung, Proxy-Unterstützung und Benutzerauthentifizierung machen es zu einem perfekten Befehlszeilen-Dienstprogramm für die Datenübertragung.
Lassen Sie uns einen tiefen Tauchgang machen und herausfinden, was Curl ist und wie man es benutzt.
Was ist der curl-Befehl?
Curl wurde ursprünglich entwickelt, um das regelmäßige Herunterladen von Währungskursen von einer Webseite zu automatisieren. Die Echtzeit-Währungskurse lieferten IRC-Benutzern Äquivalente in schwedischen Kronen in US-Dollar. Die Popularität von curl wuchs exponentiell, als die Leute begannen, seine weit verbreiteten Anwendungen zu nutzen.
Curl ist eines der ältesten und beliebtesten Open-Source-Projekte aller Zeiten. Der Name steht für Client URL und wird weltweit in unzähligen Systemen verwendet. Curl findet seine Verwendung in einer Vielzahl von Anwendungen wie Webentwicklung und Fehlertests.
Entwickler müssen die Befehle nicht manuell eingeben; sie können sie in Skripten bündeln und damit komplexe Vorgänge automatisieren. Hier sind einige Beispiele für die Verwendung von curl.
curl unter Linux installieren
Obwohl dieses beliebte Paket auf den meisten Linux-Distributionen vorinstalliert ist, können Sie curl einfach herunterladen, wenn es nicht bereits auf Ihrer installiert ist. Verwenden Sie die folgenden Befehle, um curl auf Ihrem Computer zu installieren.
Unter Ubuntu und Debian:
sudo apt install curl
Auf RHEL-basierten Distributionen wie CentOS und Fedora:
sudo yum install curl
Geben Sie Folgendes ein, um curl unter Arch Linux zu installieren:
sudo pacman -S curl
So verwenden Sie den curl-Befehl
Curl verwendet für alle seine Befehle die folgende Syntax:
curl options url
…wo sich Optionen und URL je nach Aufgabe ändern. Curl lädt den Quellcode der URL herunter, wenn Sie die Option/Aufgabe nicht erwähnen. Die neueste curl-Version errät auch das Protokoll – wenn es nicht in der URL erwähnt wird – und setzt es standardmäßig auf HTTP.
Hier sind einige hilfreiche curl-Befehle, um verschiedene funktionale Aufgaben auszuführen:
Laden Sie eine Datei mit curl . herunter
Mit curl können Sie Ressourcen über eine angegebene URL herunterladen. Dieser Befehl hat zwei Flags, die Sie verwenden können; -o und -O .
- Der Befehl -O speichert die Datei im aktuellen Verzeichnis mit demselben Namen wie auf dem Remote-Server.
- Mit dem Befehl -o hingegen können Sie den Dateinamen und den Speicherort auswählen.
Hier ist ein Beispiel für diese beiden Befehle:
curl -O https://cdn.jsdelivr.net/npm/vue/dist/vue.js
Die Datei wird in das aktuelle Verzeichnis mit ihrem ursprünglichen Namen wie auf dem Remote-Server heruntergeladen.
curl -o newfile.tar.gz http://yourdomain.com/yourfile.tar.gz
Wenn Sie den oben genannten Befehl ausführen, lädt curl die Datei herunter und speichert sie als newfile.tar.gz . Beachten Sie, dass Sie als Eingabe den Dateinamen und den Pfad zum Verzeichnis angeben müssen.
Fortsetzen eines unterbrochenen Downloads mit curl
Downloads können aus mehreren Gründen unterbrochen werden, z. B. Netzwerkunterbrechungen oder ein abgelaufener Link. Die Funktion zum Fortsetzen eines unterbrochenen Downloads hilft in solchen Situationen, indem sie Ihnen das erneute Herunterladen der gesamten Datei erspart.
Verwenden Sie das Flag -C mit entweder -o oder -O , um einen unterbrochenen Download mit curl fortzusetzen.
curl -C -O http://yourdomain.com/yourfile.tar.gz
Herunterladen mehrerer Dateien mit curl
Es gibt keinen speziellen Befehl, um mehrere Dateien gleichzeitig über curl herunterzuladen, aber Sie können die Flags -o oder -O mehrmals im selben Befehl verwenden, um ähnliche Ergebnisse zu erzielen.
Zum Beispiel:
curl -O http://website1.com/file1.iso -O https://website2.com/file2.iso
Der oben genannte Befehl lädt die ISO-Dateien von beiden URLs gleichzeitig in das aktuelle Verzeichnis herunter.
Holen Sie sich die HTTP-Header einer Webseite
HTTP-Header enthalten wichtige Informationen wie Benutzeragent, Inhaltstyp und Codierung. Sie können den HTTP-Header einer URL mit den Flags -I (in Großbuchstaben geschriebenes i, nicht L) und –http2 anfordern :
curl -I --http2 https://www.ubuntu.com/
Ausgabe:
.jpg)
Der Befehl -I zeigt verschiedene Informationen an, einschließlich Details zur Serversoftware, Datum, Inhaltstyp, X-Cache-Status und mehr.
Geben Sie eine maximale Übertragungsrate an
Dateiübertragungen beanspruchen normalerweise den größten Teil Ihrer Bandbreite, sodass Sie keine anderen Aufgaben ausführen können.
Um dieses Problem zu beheben, können Sie mit curl eine maximale Übertragungsrate für Ihre Downloads festlegen. Verwenden Sie die Methode –limit-rate gefolgt von einem k , m oder g (bezeichnet Kilobyte, Megabyte bzw. Gigabyte).
Der folgende Befehl beschränkt die Übertragungsgeschwindigkeit auf 1 MB/s:
curl --limit-rate 1m -O https://dl.google.com/go/go1.10.3.linux-amd64.tar.gz
Ausgabe:
.jpg)
Übertragen Sie Dateien per FTP und curl
Sie können Dateien mit dem File Transfer Protocol übertragen, indem Sie mit curl auf einen beliebigen FTP-Server zugreifen. Curl bietet Ihnen die Möglichkeit, Dateien herunter- und hochzuladen, nachdem Sie eine Verbindung zum FTP-Server hergestellt haben.
Verwenden Sie den folgenden Befehl, um eine Verbindung zu einem FTP-Server herzustellen:
curl -u username:password ftp://ftp.example.com/
…wobei Benutzername und Passwort die Zugangsdaten für die Anmeldung am Server sind.
Sie können jede Datei vom Server herunterladen, indem Sie die Datei-URL im folgenden Befehl angeben:
curl -u username:password -O ftp://ftp.example.com/file.tar.gz
Sie können Dateien auch mit dem Flag -T auf den FTP-Server hochladen:
curl -T newfile.tar.gz -u username:password ftp://ftp.example.com
Der Befehl -T gefolgt von der angegebenen Datei lädt sie auf den FTP-Server hoch.
Verwenden von Proxys mit curl
Curl unterstützt eine Vielzahl verschiedener Proxys wie HTTPS, HTTP und SOCKS. Sie können diese Proxys verwenden, um Daten mit curl sicher zu übertragen.
Verwenden Sie den folgenden Befehl, um Proxys in curl einzurichten:
curl -x 192.168.44.1:8888 http://linux.com/
Die Option -x verbindet Sie mit Port 8888 auf dem Server 192.168.44.1. Stellen Sie sicher, dass Sie die Proxy-Details im Befehl durch den Proxy ersetzen, zu dem Sie eine Verbindung herstellen möchten. Der oben genannte Proxyserver erfordert keine Authentifizierung, aber Sie können mit der folgenden Syntax auf einen geschützten Proxy zugreifen:
curl -U username:password -x 192.168.44.1:8888 http://linux.com/
Geben Sie den Benutzernamen und das Kennwort getrennt durch einen Doppelpunkt neben dem Flag -U an .
Versionsdetails anzeigen
Dieser Befehl ist praktisch, wenn Sie die Versionsinformationen des Pakets überprüfen möchten. Verwenden Sie das Flag –version , um die curl-Version anzuzeigen:
curl --version
Die Ausgabe sollte die curl-Version, ihre Protokolle und Funktionen erwähnen.
Identifizieren der Vorteile des curl-Befehls in Linux
Curl ist mit zahlreichen Optionen ausgestattet, um die Datenübertragung auf Ihrem Gerät zu automatisieren. Die Funktion zum Fortsetzen unterbrochener Downloads und FTP-Unterstützung ist in mehreren Anwendungen praktisch.
Die Beispiele in diesem Tutorial sollen die beliebtesten curl-Befehle mit ihren jeweiligen Codes zeigen, damit Sie den curl-Befehl besser verstehen.