15 Tipps zur Verwendung des Befehls curl unter Linux

15 Tipps zur Verwendung des Befehls curl unter Linux

Mitte der neunziger Jahre, als das Internet noch in den Kinderschuhen steckte, ein schwedischer Programmierer namens Daniel Stenberg startete ein Projekt, das schließlich zu dem wurde, was wir wissen als Locken Heute.

Anfangs zielte er darauf ab, a zu entwickeln Bot Dies würde Währungswechselraten von einer Webseite regelmäßig herunterladen und den IRC -Benutzern in US -Dollar schwedische Kronor -Äquivalente in US -Dollar zur Verfügung stellen.

Kurz gesagt, das Projekt gedieh und fügte auf dem Weg mehrere Protokolle und Merkmale hinzu - und der Rest ist die Geschichte. Lassen Sie uns nun mit beiden Füßen eintauchen und lernen, wie man Curl verwendet, um Daten zu übertragen, und mehr unter Linux!

Wir haben die folgende Liste von 15 Curl -Befehlen für Sie zusammengestellt.

1. Curl -Version anzeigen

Der -V oder --Ausführung Die Optionen geben nicht nur die Version zurück, sondern auch die unterstützten Protokolle und Funktionen in Ihrer aktuellen Version.

$ curl --version Locken 7.47.0 (x86_64-pc-linux-gnu) libcurl/7.47.0 gnutls/3.4.10 ZLIB/1.2.8 libidn/1.32 librtmp/2.3 Protocols: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtmp rtsp smb smbs smtp smtps telnet tftp Features: AsynchDNS IDN IPv6 Largefile GSS-API Kerberos SPNEGO NTLM NTLM_WB SSL libz TLS-SRP UnixSockets 

2. Laden Sie eine Datei herunter

Wenn Sie eine Datei herunterladen möchten, können Sie verwenden Locken mit dem oder Optionen. Ersteres speichert die Datei im aktuellen Arbeitsverzeichnis mit demselben Namen wie im Remote -Standort, während mit letzterer einen anderen Dateinamen und/oder Ort angeben können.

$ curl -o http: // Ihre Domain.com/yourfile.Teer.GZ # Speichern Sie als Ihre Datei.Teer.GZ $ curl -o Neufile.Teer.GZ http: // Ihre Domain.com/yourfile.Teer.GZ # sparen als Newfile.Teer.gz 

3. Nehmen Sie einen unterbrochenen Download wieder auf

Wenn ein Download aus irgendeinem Grund unterbrochen wurde (zum Beispiel mit Verwendung Strg + c), Sie können es sehr leicht wieder aufnehmen. Die Verwendung von -C - (Dash C, Space Dash) fordert Curl an.

$ curl -c --o http: // Ihre Domain.com/yourfile.Teer.gz 
Datei mit dem Curl -Befehl herunterladen

4. Laden Sie mehrere Dateien herunter

Mit dem folgenden Befehl werden Sie herunterladen die Info.html Und um.html aus http: // yourite.com Und http: // mysite.com, auf einmal.

$ curl -o http: // yourite.com/info.html -o http: // mysite.com/über.html 

5. Laden Sie URLs aus einer Datei herunter

Wenn Sie sich kombinieren Locken Mit Xargs können Sie Dateien aus einer Liste von URLs in einer Datei herunterladen.

$ xargs -n 1 curl -o < listurls.txt 
Laden Sie mehrere Dateien mit Curl herunter

6. Verwenden Sie einen Proxy mit oder ohne Authentifizierung

Wenn Sie hinter einem Proxy -Server stehen, der den Port anhört 8080 bei Proxy.Deine Domain.com, Tun.

$ curl -x Proxy.Deine Domain.Com: 8080 -U -Benutzer: Passwort -O http: // Ihre Domain.com/yourfile.Teer.gz 

wohin Sie überspringen können -U -Benutzer: Passwort Wenn Ihr Proxy keine Authentifizierung erfordert.

7. Abfragen Sie HTTP -Header

Http Mit den Headern kann der Remote -Webserver zusammen mit der tatsächlichen Anfrage zusätzliche Informationen über sich selbst senden. Dies liefert dem Kunden Details darüber, wie die Anfrage bearbeitet wird.

Um die HTTP -Header von einer Website abzufragen, tun Sie:

$ curl -i www.Tecmint.com 
Curl Abfrage HTTP -Header

Diese Informationen sind auch in den Entwickler -Tools Ihres Browsers verfügbar.

8. Machen Sie eine Postanforderung mit Parametern

Der folgende Befehl sendet die Vorname Und Familienname, Nachname Parameter zusammen mit ihren entsprechenden Werten bis https: // Ihre Domain.com/info.Php.

$ curl - -data "firstname = jOHN & lastname = doe" https: // Ihre Domain.com/info.Php 

Sie können diesen Tipp verwenden, um das Verhalten eines regulären HTML -Formulars zu simulieren.

9. Laden Sie Dateien von einem FTP -Server mit oder ohne Authentifizierung herunter

Wenn ein Remote -FTP -Server Verbindungen bei erwartet ftp: // yourftpserver, Der folgende Befehl wird heruntergeladen deine Datei.Teer.gz im aktuellen Arbeitsverzeichnis.

$ curl -u username: password -o ftp: // yourftpserver/yourfile.Teer.gz 

wohin Sie überspringen können -u Benutzername: Passwort Wenn der FTP -Server anonyme Anmeldungen erlaubt.

10. Laden Sie Dateien auf einen FTP -Server mit oder ohne Authentifizierung hoch

So laden Sie eine lokale Datei mit dem Namen MyLocalfile.Teer.gz Zu ftp: // yourftpserver Mit Curl, tun Sie:

$ curl -u username: password -t mylocalfile.Teer.gz ftp: // yourftpserver 

11. Benutzeragenten angeben

Der User-Agent ist Teil der Informationen, die zusammen mit einem gesendet werden Http Anfrage. Dies gibt an, in welchem ​​Browser der Client die Anforderung verwendet hat. Mal sehen, was unsere aktuelle Curl -Version als Standard verwendet, und lassen Sie sie später ändern. “Ich bin ein neuer Webbrowser”:

$ curl -i http: // localhost --user -Agent "Ich bin ein neuer Webbrowser" 
Curl Check User Agent

12. Speichern Sie Website -Cookies

Sie möchten sehen, welche Cookies auf Ihrem Computer heruntergeladen werden, wenn Sie suchen https: // www.CNN.com? Verwenden Sie den folgenden Befehl, um sie zu speichern cnncookies.txt. Sie können dann den CAT -Befehl verwenden, um die Datei anzuzeigen.

$ curl-Cookie-jar cnncookies.txt https: // www.CNN.com/Index.html -o 
Curl Store Website Cookies

13. Senden Sie Website -Cookies

Sie können die Cookies verwenden,.

$ curl -Cookie cnncookies.txt https: // www.CNN.com 

14. Ändern Sie die Namensauflösung

Wenn Sie ein Webentwickler sind und eine lokale Version von testen möchten Deine Domain.com Bevor Sie es live schieben, können Sie Curl auflösen lassen http: // www.Deine Domain.com zu Ihrem örtlichen Haus wie SO:

$ curl -resolve www.Deine Domain.com: 80: localhost http: // www.Deine Domain.com/ 

So die Anfrage zu http: // www.Deine Domain.com Wird Curl anweisen, die Site von Localhost anzufordern, anstatt DNS oder die /etc/hosts Datei.

15. Download -Rate beschränken

Um zu verhindern, dass Curl Ihre Bandbreite versteckt, können Sie die Download -Rate einschränken 100 kb/s folgendermaßen.

$ curl-limit-rate 100k http: // Ihre Domine.com/yourfile.Teer.gz -o 
Zusammenfassung

In diesem Artikel haben wir eine kurze Geschichte der Ursprünge von Curl geteilt und erklärt, wie man sie in 15 praktischen Beispielen verwendet.

Kennen Sie alle anderen Curl -Befehle, die wir in diesem Artikel möglicherweise verpasst haben? Fühlen Sie sich frei, sie in den Kommentaren mit unserer Community zu teilen! Auch wenn Sie Fragen haben, können Sie uns gerne wissen. Wir freuen uns von Ihnen zu hören!