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

Linux-Curl-Befehl mit Beispielen erklärt

Einführung

Die Übertragung von Daten zu und von einem Server erfordert Tools, die die erforderlichen Netzwerkprotokolle unterstützen. Linux hat mehrere Tools, die für diesen Zweck entwickelt wurden, die beliebtesten sind curl und wget.

Dieses Tutorial zeigt Ihnen, wie Sie curl verwenden Befehl und stellen Ihnen eine vollständige Liste der verfügbaren Optionen zur Verfügung.

Voraussetzungen

  • Zugang zum Terminal
  • Internetzugang
  • curl installiert

Was ist der Curl-Befehl?

curl (kurz für „Client URL“) ist ein Kommandozeilentool, das die Datenübertragung über verschiedene Netzwerkprotokolle ermöglicht. Es kommuniziert mit einem Web- oder Anwendungsserver, indem es eine relevante URL und die zu sendenden oder zu empfangenden Daten angibt.

curl wird von libcurl unterstützt, einer portablen clientseitigen URL-Übertragungsbibliothek. Sie können es direkt in der Befehlszeile verwenden oder in ein Skript einfügen. Die häufigsten Anwendungsfälle für curl sind:

  • Herunterladen von Dateien aus dem Internet
  • Endpunkttests
  • Fehlerbehebung
  • Fehlerprotokollierung

Curl-Syntax

Die grundlegende curl Syntax ist wie folgt:

curl [options/URLs]

Zum Beispiel:

curl https://www.gnu.org/gnu/gnu.html

Das System gibt die gefundenen HTML-Inhalte auf der nach dem curl angegebenen URL aus Befehl.

Wenn Sie eine URL angeben, die zu einer Datei führt, können Sie curl verwenden So laden Sie die Datei auf Ihr lokales System herunter:

curl [url] > [local-file]

Der Fortschrittsbalken zeigt an, wie viel von der Datei bisher heruntergeladen wurde.

Die Syntax von URLs, die Teil des Befehls sind, hängt vom Protokoll ab. Mehrere URLs, die sich in einem Teil unterscheiden, werden mit geschweiften Klammern zusammengeschrieben:

http://example.{first,second,third}.com

Alphanumerische Reihen werden mit Klammern geschrieben:

ftp://ftp.url.com/file[1-100].txt

Obwohl verschachtelte Sequenzen nicht unterstützt werden, sind mehrere Sequenzen erlaubt:

http://url.com/archive[2010-2020]/vol[1-4]/part{a,b,c}.html

Curl-Protokolle

curl unterstützt zahlreiche Protokolle zur Datenübertragung. Unten finden Sie die vollständige Liste.

Protokoll Beschreibung
DICT Ein Wörterbuchnetzwerkprotokoll zum Abfragen von Wörterbuchservern über die Bedeutung von Wörtern.
DATEI Ein URL-Schema zum Abrufen einer Datei aus dem lokalen Dateisystem mit curl.
FTP, FTPS File Transfer Protocol, das für Dateiübertragungen zwischen Clients und Servern verwendet wird. FTPS ist die Version desselben Protokolls mit einer zusätzlichen SSL/TLS-Sicherheitsschicht.
GOPHER, GOPHER Ein altes Protokoll zum Suchen, Abrufen und Verteilen von Internetdokumenten, ein Vorläufer von HTTP. GOPHERS ist die Version desselben Protokolls mit einer zusätzlichen SSL/TLS-Sicherheitsschicht.
HTTP, HTTPS Hypertext Transfer Protocol, verwendet für Web- und Internet-Datenübertragung. HTTPS ist die Version desselben Protokolls mit einer zusätzlichen SSL/TLS-Sicherheitsschicht.
IMAP, IMAPS Internet Message Access Protocol, das für E-Mail-Zugriff und -Verwaltung verwendet wird. IMAPS ist die Version desselben Protokolls mit einer zusätzlichen SSL/TLS-Sicherheitsschicht.
LDAP, LDAPS Lightweight Directory Access Protocol, das für den verteilten Zugriff und die Verwaltung von Verzeichnisinformationen verwendet wird. LDAPS ist die Version desselben Protokolls mit einer zusätzlichen SSL/TLS-Sicherheitsschicht.
MQTT Message Queuing Telemetry Transport - ein Protokoll für den Datenaustausch zwischen kleinen Geräten, normalerweise IoT-Systemen.
POP3, POP3S Post Office Protocol Version 3 – ein Protokoll zum Abrufen von E-Mails von einem Server. POP3S ist die Version desselben Protokolls mit einer zusätzlichen SSL/TLS-Sicherheitsschicht.
RTMP Real-Time Messaging Protocol – ein Streaming-Protokoll für Audio-, Video- und andere Daten.
RTSP Echtzeit-Streaming-Protokoll, das für die Verwaltung von Streaming-Media-Servern verwendet wird.
SCP Secure Copy - ein Protokoll zum Kopieren von Dateien zu und von einem SSH-Server.
SFTP SSH File Transfer Protocol - eine Version des File Transfer Protocol, das die SSH-Verbindung verwendet.
SMB, SMBS Server Message Block – ein Protokoll zur Verwaltung des gemeinsamen Zugriffs auf Dateien und Computerperipheriegeräte. SMBS ist die Version desselben Protokolls mit einer zusätzlichen SSL/TLS-Sicherheitsschicht.
SMTP, SMPTS Simple Mail Transfer Protocol - ein E-Mail-Protokoll zur einfachen Übertragung von E-Mails. SMTPS ist die Version desselben Protokolls mit einer zusätzlichen SSL/TLS-Sicherheitsschicht.
TELNET Ein Anwendungsschichtprotokoll für bidirektionale interaktive textorientierte Kommunikation.
TFTP Trivial File Transfer Protocol, das zum Hoch- oder Herunterladen von Dateien auf oder von einem Remote-Host verwendet wird.

curl-Befehlsoptionen

curl akzeptiert eine breite Palette von Optionen, was es zu einem äußerst vielseitigen Befehl macht. Optionen beginnen mit einem oder zwei Bindestrichen. Wenn keine zusätzlichen Werte erforderlich sind, können die Einzelstrichoptionen zusammen geschrieben werden. Beispielsweise der Befehl, der -O verwendet , -L , und -v Optionen können geschrieben werden als:

curl -OLv [url]

Die Liste aller verfügbaren Optionen finden Sie unten.

Option Beschreibung
--abstract-unix-socket <path> Verbinden Sie sich über einen abstrakten Unix-Socket statt über ein Netzwerk.

Beispiel:
curl --abstract-unix-socket socketpath https://example.com
--alt-svc <file name> Alt-SVC-Parser aktivieren.

Beispiel:
curl --alt-svc svc.txt https://example.com
--anyauth Curl findet und verwendet die sicherste Authentifizierungsmethode für die angegebene HTTP-URL.

Beispiel:
curl --anyauth --user me:pass https://example.com
-a, --append An die Zieldatei anhängen.

Beispiel:
curl --upload-file local --append ftp://example.com/
--aws-sigv4 <provider1[:provider2[:region[:service]]]> Verwenden Sie die AWS V4-Signaturauthentifizierung.

Beispiel:
curl --aws-sigv4 "aws:amz:east-2:es" --user "key:secret" https://example.com
--basic Verwenden Sie die HTTP-Standardauthentifizierung.

Beispiel:
curl -u name:password --basic https://example.com
--cacert <file> Verwenden Sie die angegebene Datei für die Zertifikatsüberprüfung.

Beispiel:
curl --cacert CA-file.txt https://example.com
--capath <dir> Verwenden Sie das angegebene Verzeichnis, um nach den Zertifikaten zu suchen.

Beispiel:
curl --capath /local/directory https://example.com
--cert-status Überprüfen Sie den Status des Serverzertifikats.

Beispiel:
curl --cert-status https://example.com
--cert-type <type> Geben Sie den Typ des bereitgestellten Zertifikats an. Die erkannten Typen sind PEM (Standard), DER , ENG und P12 .

Beispiel:
curl --cert-type ENG --cert file https://example.com
-E, --cert <certificate[:password]> Verwenden Sie die bereitgestellte Zertifikatsdatei, wenn Sie mit einem SSL-basierten Protokoll arbeiten.

Beispiel:
curl --cert certfile --key keyfile https://example.com
--ciphers <list of ciphers> Geben Sie Chiffren an, die in der Verbindung verwendet werden sollen.

Beispiel:
curl --ciphers ECDHE-ECDSA-AES256-CCM8 https://example.com
--compressed-ssh Integrierte SSH-Komprimierung aktivieren.

Beispiel:
curl --compressed-ssh sftp://example.com/
--compressed Anfrage, eine komprimierte Antwort zu erhalten.

Beispiel:
curl --compressed https://example.com
-K, --config <file> Stellen Sie eine Textdatei mit Curl-Argumenten bereit, anstatt sie in die Befehlszeile zu schreiben.

Beispiel:
curl --config file.txt https://example.com
--connect-timeout <fractional seconds> Geben Sie die maximale Dauer einer Curl-Verbindung an.

Beispiel:
curl --connect-timeout 30 https://example.com
--connect-to <HOST1:PORT1:HOST2:PORT2> Stellen Sie eine Verbindungsregel bereit, um Anfragen an einen bestimmten Server-Cluster-Knoten zu leiten.

Beispiel:
curl --connect-to example.com:443:example.net:8443 https://example.com
-C, --continue-at <offset> Dateiübertragung am angegebenen Offset fortsetzen.

curl -C 400 https://example.com
-c, --cookie-jar <filename> Geben Sie eine Datei zum Speichern von Cookies an.

curl -c store.txt https://example.com
-b, --cookie <data|filename> Cookies aus einer Datei lesen.

Beispiel:
curl -b cookiefile https://example.com
--create-dirs Erstellen Sie die lokalen Verzeichnisse für die --output Möglichkeit.

Beispiel:
curl --create-dirs --output local/dir/file https://example.com
--create-file-mode <mode> Geben Sie an, welcher Modus bei der Dateierstellung eingestellt werden soll.

Beispiel:
curl --create-file-mode 0777 -T localfile sftp://example.com/new
--crlf Wandle LF in CRLF um.

curl --crlf -T file ftp://example.com/
--crlfile <file> Stellen Sie eine Zertifikatssperrliste für Peer-Zertifikate bereit.

curl --crlfile revoke.txt https://example.com
--curves <algorithm list> Stellen Sie Kurven zum Aufbau einer SSL-Sitzung bereit.

Beispiel:
curl --curves X25519 https://example.com
--data-ascii <data> Siehe -d , --data .

Beispiel:
curl --data-ascii @file https://example.com
--data-binary <data> Posten Sie die Daten wie angegeben, ohne zusätzliche Verarbeitung.

curl --data-binary @filename https://example.com
--data-raw <data> Dasselbe wie -d , --data , aber das @-Zeichen wird nicht anders behandelt als der Rest.

curl --data-raw "@[email protected]@" https://example.com
--data-urlencode <data> Dasselbe wie -d , --data , aber URL-Codierung durchführen.

Beispiel:
curl --data-urlencode name=val https://example.com
-d, --data <data> Daten in einer POST-Anforderung an einen HTTP-Server senden.

Beispiel:
curl -d "name=curl" https://example.com
--delegation <LEVEL> Geben Sie an, wann der Server Anmeldeinformationen delegieren darf.

Beispiel:
curl --delegation "always" https://example.com
--digest Aktivieren Sie die HTTP-Digest-Authentifizierung.

Beispiel:
curl -u name:password --digest https://example.com
--disable-eprt EPRT- und LPRT-Befehle für aktive FTP-Übertragungen deaktivieren.

Beispiel:
curl --disable-eprt ftp://example.com/
--disable-epsv Deaktivieren Sie EPSV für passive FTP-Übertragungen.

Beispiel:
curl --disable-epsv ftp://example.com/
-q, --disable Deaktivieren Sie das Lesen der curlrc-Konfigurationsdatei.

curl -q https://example.com 
--disallow-username-in-url Beenden, wenn eine URL bereitgestellt wird, die einen Benutzernamen enthält.

Beispiel:
curl --disallow-username-in-url https://example.com
--dns-interface <interface> Geben Sie eine Schnittstelle für ausgehende DNS-Anfragen an.

Beispiel:
curl --dns-interface eth0 https://example.com
--dns-ipv4-addr <address> Geben Sie eine IPv4-Adresse an, von der die DNS-Anfragen kommen.

Beispiel:
curl --dns-ipv4-addr 10.1.2.3 https://example.com
--dns-ipv6-addr <address> Geben Sie eine IPv6-Adresse an, von der die DNS-Anfragen kommen.

Beispiel:
curl --dns-ipv6-addr 2a04:4e42::561 https://example.com
--dns-servers <addresses> Geben Sie Ihre eigene Liste von DNS-Servern an.

Beispiel:
curl --dns-servers 192.168.0.1,192.168.0.2 https://example.com
--doh-cert-status --cert-status für DNS-über-HTTPS.

Beispiel:
curl --doh-cert-status --doh-url https://doh.server https://example.com 
--doh-insecure -k , --insecure für DoH.

Beispiel:
curl --doh-insecure --doh-url https://doh.server https://example.com
--doh-url <URL> Geben Sie einen DoH-Server für die Hostnamenauflösung an.

Beispiel:
curl --doh-url https://doh.server https://example.com 
-D, --dump-header <filename> Geben Sie eine Datei zum Schreiben von Protokollheadern an.

Beispiel:
curl --dump-header store.txt https://example.com 
--egd-file <file> Geben Sie einen Pfad für den EGD-Socket an.

Beispiel:
curl --egd-file /path/here https://example.com 
--engine <name> Geben Sie eine OpenSSL-Krypto-Engine an.

Beispiel:
curl --engine flavor https://example.com 
--etag-compare <file> Anfordern eines ETag-Lesens aus einer Datei.

Beispiel:
curl --etag-compare etag.txt https://example.com 
--etag-save <file> Speichern Sie ein HTTP-ETag in einer Datei.

Beispiel:
curl --etag-save etag.txt https://example.com 
--expect100-timeout <seconds> Maximale Wartezeit für eine 100-Continue-Antwort.

Beispiel:
curl --expect100-timeout 2.5 -T file https://example.com 
--fail-early Curl anweisen, fehlzuschlagen und zu beenden, wenn es den ersten Fehler bei der Übertragung erkennt.

Beispiel:
curl --fail-early https://example.com https://two.example 
--fail-with-body Wenn der Server einen Fehler mit Code 400 oder höher zurückgibt, speichert curl den Inhalt und gibt Fehler 22 zurück.

Beispiel:
curl --fail-with-body https://example.com 
-f, --fail Wenn der Server einen Fehler zurückgibt, schlägt curl unbemerkt fehl und gibt Fehler 22 zurück.

Beispiel:
curl --fail https://example.com 
--false-start Verwenden Sie einen Fehlstart beim TLS-Handshake.

Beispiel:
curl --false-start https://example.com 
--form-string <name=string> Ähnlich wie -F , --form , aber die Wertzeichenfolgen werden wörtlich verarbeitet.

Beispiel:
curl --form-string "data" https://example.com 
-F, --form <name=content> Emulieren Sie ein Formular mit einem Senden Taste, die gedrückt wurde. Der @ Zeichen erzwingt, dass der Inhalt eine Datei ist. Der < sign extrahiert nur den Inhaltsteil der Datei.

Beispiel:
curl --form "name=curl" --form "[email protected]" https://example.com
--ftp-account <data> Geben Sie die Zugangsdaten für den FTP-Server an.

Beispiel:
curl --ftp-account "account_data" ftp://example.com/
--ftp-alternative-to-user <command> Geben Sie den Befehl an, der gesendet werden soll, wenn die Authentifizierung von Benutzername und Passwort fehlschlägt.

Beispiel:
curl --ftp-alternative-to-user "U53r" ftp://example.com 
--ftp-create-dirs Wenn das angegebene Verzeichnis nicht existiert, versucht curl, es zu erstellen.

Beispiel:
curl --ftp-create-dirs -T file ftp://example.com/dirs/one/file 
--ftp-method <method> Geben Sie eine Methode zum Abrufen von Dateien über FTP an. Verfügbare Methoden sind multicwd , nocwd und singlecwd .

Beispiel:
curl --ftp-method multicwd ftp://example.com/dir1/dir2/file 
--ftp-pasv Verwenden Sie den passiven Datenverbindungsmodus.

Beispiel:
curl --ftp-pasv ftp://example.com/ 
-P, --ftp-port <address> Kehren Sie die Standardrollen für die FTP-Verbindung um.

Beispiel:
curl -P eth0 ftp:/example.com 
--ftp-pret Senden Sie den PRET-Befehl vor PASV/EPSV.

Beispiel:
curl --ftp-pret ftp://example.com/ 
--ftp-skip-pasv-ip Verwenden Sie nicht die vom Server vorgeschlagene IP-Adresse. curl verwendet die Kontrollverbindungs-IP.

Beispiel:
curl --ftp-skip-pasv-ip ftp://example.com/ 
--ftp-ssl-ccc-mode <active/passive> Stellen Sie den Clear Command Channel (CCC)-Modus ein.

Beispiel:
curl --ftp-ssl-ccc-mode active --ftp-ssl-ccc ftps://example.com/ 
--ftp-ssl-ccc Nach Abschluss der Authentifizierung wird die SSL/TLS-Schicht eliminiert, was eine unverschlüsselte Kommunikation ermöglicht.

Beispiel:
curl --ftp-ssl-ccc ftps://example.com/ 
--ftp-ssl-control Verwenden Sie SSL/TLS für die Anmeldung, stoppen Sie die Verschlüsselung, wenn die Datenübertragung beginnt.

Beispiel:
curl --ftp-ssl-control ftp://example.com 
-G, --get Verwenden Sie eine HTTP-GET-Anforderung anstelle von POST.

Beispiel:
curl --get -d "tool=curl" -d "age=old" https://example.com
-g, --globoff Deaktivieren Sie den URL-Globing-Parser.

Beispiel:
curl -g "https://example.com/{[]}}}}" 
--happy-eyeballs-timeout-ms <milliseconds> Verwenden Sie den Happy-Eyeballs-Algorithmus, um sich mit Dual-Stack-Hosts zu verbinden.

Beispiel:
curl --happy-eyeballs-timeout-ms 500 https://example.com 
--haproxy-protocol Verwenden Sie den Header des HAProxy-PROXY-Protokolls v1.

Beispiel:
curl --haproxy-protocol https://example.com 
-I, --head Nur Header erhalten.

Beispiel:
curl -I https://example.com 
-H, --header <header/@file> Geben Sie einen zusätzlichen Header an, der in der HTTP-Anforderung gesendet werden soll.

Beispiel:
curl -H "X-First-Name: Joe" https://example.com 
-h, --help <category> Siehe Hilfe für eine bestimmte Kategorie. all listet alle verfügbaren Optionen auf.

Beispiel:
curl --help all 
--hostpubmd5 <md5> Übergeben Sie eine 32-stellige hexadezimale Zeichenfolge.

Beispiel:
curl --hostpubmd5 e5c1c49020640a5ab0f2034854c321a8 sftp://example.com/ 
--hsts <file name> HSTS aktivieren.

Beispiel:
curl --hsts cache.txt https://example.com 
--http0.9 Akzeptieren Sie eine HTTP-Version 0.9-Antwort.

Beispiel:
curl --http0.9 https://example.com
-0, --http1.0 Verwenden Sie HTTP-Version 1.0.

Beispiel:
curl --http1.0 https://example.com
--http1.1 Verwenden Sie HTTP-Version 1.1.

Beispiel:
curl --http1.1 https://example.com 
--http2-prior-knowledge Verwenden Sie HTTP-Version 2.0. Verwenden Sie diese Option, wenn Sie wissen, dass der Server diese HTTP-Version unterstützt.

Beispiel:
curl --http2-prior-knowledge https://example.com
--http2 Versuchen Sie, HTTP-Version 2.0 zu verwenden.

Beispiel:
curl --http2 https://example.com
--http3 Verwenden Sie HTTP-Version 3.0. Dies ist eine experimentelle Option.

Beispiel:
curl --http3 https://example.com
--ignore-content-length Ignorieren Sie den Content-Length-Header.

Beispiel:
curl --ignore-content-length https://example.com
-i, --include Geben Sie an, dass die Ausgabe die HTTP-Antwortheader enthalten soll.

Beispiel:
curl -i https://example.com
-k, --insecure Curl mit unsicheren Verbindungen arbeiten lassen.

Beispiel:
curl --insecure https://example.com 
--interface <name> Geben Sie die Schnittstelle zum Ausführen einer Aktion an.

Beispiel:
curl --interface eth0 https://example.com 
-4, --ipv4 Nur Namen in IPv4-Adressen auflösen.

Beispiel:
curl --ipv4 https://example.com 
-6, --ipv6 Nur Namen in IPv6-Adressen auflösen.

Beispiel:
curl --ipv6 https://example.com
-j, --junk-session-cookies Sitzungscookies verwerfen.

Beispiel:
curl --junk-session-cookies -b cookies.txt https://example.com 
--keepalive-time <seconds> Geben Sie die Leerlaufzeit für die Verbindung an, bevor Keepalive-Tests gesendet werden.

Beispiel:
curl --keepalive-time 30 https://example.com 
--key-type <type> Geben Sie den Typ des privaten Schlüssels an. Verfügbare Typen sind PEM (Standard), DER , und ENG .

Beispiel:
curl --key-type ENG --key here https://example.com 
--key <key> Geben Sie die Datei an, die den privaten Schlüssel enthält.

Beispiel:
curl --cert certificate --key here https://example.com 
--krb <level> Aktivieren und verwenden Sie die Kerberos-Authentifizierung. Verfügbare Ebenen sind clear , safe , confidential und private (Ursprünglich).

Beispiel:
curl --krb clear ftp://example.com/ 
--libcurl <file> C-Quellcode für die angegebene Befehlszeilenoperation beschaffen.

Beispiel:
curl --libcurl client.c https://example.com 
--limit-rate <speed> Geben Sie die maximale Upload- und Download-Übertragungsrate an.

Beispiel:
curl --limit-rate 100K https://example.com 
-l, --list-only Erzwingen Sie eine Nur-Namensansicht.

Beispiel:
curl --list-only ftp://example.com/dir/ 
--local-port <num/range> Geben Sie die Portnummern an, die für die Verbindung verwendet werden sollen.

Beispiel:
curl --local-port 1000-3000 https://example.com 
--location-trusted Ähnlich wie -L , --location , ermöglicht es Ihnen jedoch, Name und Passwort an alle Umleitungen zu senden.

Beispiel:
curl --location-trusted -u user:pass https://example.com
-L, --location Curl erlauben, Weiterleitungen zu folgen.

Beispiel:
curl -L https://example.com 
--login-options <options> Geben Sie die Anmeldeoptionen für die E-Mail-Server-Authentifizierung an.

Beispiel:
curl --login-options 'AUTH=*' imap://example.com 
--mail-auth <address> Geben Sie eine einzelne Adresse als Identität an.

Beispiel:
curl --mail-auth [email protected] -T mail smtp://example.com/ 
--mail-from <address> Geben Sie eine einzelne "Von"-Adresse an.

Beispiel:
curl --mail-from [email protected] -T mail smtp://example.com/ 
--mail-rcpt-allowfails Erlaubt curl, mit der SMTP-Konversation fortzufahren, wenn einer der Empfänger ausfällt.

Beispiel:
curl --mail-rcpt-allowfails --mail-rcpt [email protected] smtp://example.com 
--mail-rcpt <address> Geben Sie eine einzelne Empfängeradresse an.

Beispiel:
curl --mail-rcpt [email protected] smtp://example.com 
-M, --manual Lesen Sie das Curl-Handbuch.

Beispiel:
curl --manual 
--max-filesize <bytes> Geben Sie die maximale Größe der herunterzuladenden Datei an.
Beispiel:
curl --max-filesize 500K https://example.com 
--max-redirs <num> Geben Sie die maximale Anzahl an Weiterleitungen an, wenn --location ist aktiv.

Beispiel:
curl --max-redirs 3 --location https://example.com 
-m, --max-time <fractional seconds> Geben Sie die maximale Zeit für eine Operation an.

Beispiel:
curl --max-time 5.52 https://example.com 
--metalink Geben Sie eine Metalink-Ressource an. Diese Option ist in den neuesten Versionen von curl deaktiviert.

Beispiel:
curl --metalink file https://example.com 
--negotiate SPNEGO-Authentifizierung aktivieren.

Beispiel:
curl --negotiate -u : https://example.com
--netrc-file <filename> Wie --n , --netrc , erlaubt Ihnen jedoch, die zu verwendende Datei anzugeben.

Beispiel:
curl --netrc-file netrc https://example.com 
--netrc-optional Wie --n , --netrc , aber die Verwendung von netrc ist optional.

Beispiel:
curl --netrc-optional https://example.com 
-n, --netrc Durchsuchen Sie die netrc-Datei nach Anmeldeinformationen.

Beispiel:
curl --netrc https://example.com 
-:, --next Verwenden Sie die Option zum Trennen von URL-Anforderungen.

Beispiel:
curl -I https://example.com --next https://example.net/ 
--no-alpn Alpn-TLS-Erweiterung deaktivieren.

Beispiel:
curl --no-alpn https://example.com 
-N, --no-buffer Ausgangsstrompuffer deaktivieren.

Beispiel:
curl --no-buffer https://example.com 
--no-keepalive Keepalive-Meldungen deaktivieren.

Beispiel:
curl --no-keepalive https://example.com 
--no-npn NPN-TLS-Erweiterung deaktivieren.

Beispiel:
curl --no-npn https://example.com 
--no-progress-meter Fortschrittsbalken deaktivieren, aber andere Meldungen anzeigen.

Beispiel:
curl --no-progress-meter -o store https://example.com 
--no-sessionid Deaktivieren Sie das Caching der SSL-Sitzungs-ID.

Beispiel:
curl --no-sessionid https://example.com 
--noproxy <no-proxy-list> Listen Sie die Hosts auf, die keinen Proxy verwenden sollten.

Beispiel:
curl --noproxy "www.example" https://example.com 
--ntlm-wb Wie --ntlm , übergibt aber auch die Authentifizierung an ntlmauth.

Beispiel:
curl --ntlm-wb -u user:password https://example.com 
--ntlm Aktivieren Sie die NTLM-Authentifizierung.

Beispiel:
curl --ntlm -u user:password https://example.com 
--oauth2-bearer <token> Stellen Sie ein Bearer-Token für OAUTH 2.0 bereit.

Beispiel:
curl --oauth2-bearer "mF_9.B5f-4.1JqM" https://example.com 
--output-dir <dir> Geben Sie das Ausgabedateiverzeichnis an.

Beispiel:
curl --output-dir "tmp" -O https://example.com 
-o, --output <file> Ausgabe in einer Datei speichern. Die Ausgabe wird nicht in stdout angezeigt.

Beispiel:
curl -o file https://example.com -o file2 https://example.net 
--parallel-immediate Parallele Verbindungen dem Warten auf neue Verbindungen oder Multiplex-Streams vorziehen.

Beispiel:
curl --parallel-immediate -Z https://example.com -o file1 https://example.com -o file2
--parallel-max <num> Geben Sie die maximale Anzahl paralleler Verbindungen an.

Beispiel:
curl --parallel-max 100 -Z https://example.com ftp://example.com/ 
-Z, --parallel Führen Sie Übertragungen parallel durch.

Beispiel:
curl --parallel https://example.com -o file1 https://example.com -o file2
--pass <phrase> Geben Sie eine Passphrase für den privaten Schlüssel an.

Beispiel:
curl --pass secret --key file https://example.com 
--path-as-is Curl am Zusammenführen von /./ hindern und /../ Sequenzen.

Beispiel:
curl --path-as-is https://example.com/../../etc/passwd
--pinnedpubkey <hashes> Geben Sie einen öffentlichen Schlüssel an, den curl verwenden soll.

Beispiel:
curl --pinnedpubkey keyfile https://example.com 
--post301 Curl daran hindern, POST-Anforderungen nach einer 301-Umleitung in GET-Anforderungen umzuwandeln.

Beispiel:
curl --post301 --location -d "data" https://example.com 
--post302 Curl daran hindern, nach einer 302-Umleitung POST- in GET-Anforderungen umzuwandeln.

curl --post302 --location -d "data" https://example.com 
--post303 Verhindert, dass curl POST-Anforderungen nach einer 303-Umleitung in GET-Anforderungen umwandelt.

Beispiel:
curl --post303 --location -d "data" https://example.com 
--preproxy [protocol://]host[:port] Verwenden Sie den SOCKS-Proxy als Pre-Proxy.

Beispiel:
curl --preproxy socks5://proxy.example -x http://http.example https://example.com 
-#, --progress-bar Verwenden Sie den einfachen Fortschrittsbalken.

Beispiel:
curl -# -O https://example.com 
--proto-default <protocol> Geben Sie an, welches Protokoll curl für URLs ohne Schemanamen verwenden soll.

Beispiel:
curl --proto-default https ftp.example.com 
--proto-redir <protocols> Geben Sie an, welche Protokolle curl bei der Umleitung verwenden soll.

Beispiel:
curl --proto-redir =http,https https://example.com 
--proto <protocols> Geben Sie an, welche Protokolle curl für Übertragungen verwenden soll.

Beispiel:
curl --proto =http,https,sftp https://example.com 
--proxy-anyauth Curl sollte eine geeignete Authentifizierungsmethode wählen.

Beispiel:
curl --proxy-anyauth --proxy-user user:passwd -x proxy https://example.com
--proxy-basic Verwenden Sie HTTP Basic für die Kommunikation mit einem Proxy.

Beispiel:
curl --proxy-basic --proxy-user user:passwd -x proxy https://example.com 
--proxy-cacert <file> --cacert for HTTPS proxies.

Beispiel:
curl --proxy-cacert CA-file.txt -x https://proxy https://example.com 
--proxy-capath <dir> --capath for HTTPS proxies.

Beispiel:
curl --proxy-capath /local/directory -x https://proxy https://example.com
--proxy-cert-type <type> --cert-type for HTTPS proxies.

Beispiel:
curl --proxy-cert-type PEM --proxy-cert file -x https://proxy https://example.com
--proxy-cert <cert[:passwd]> -E , --cert for HTTPS proxies.

Beispiel:
curl --proxy-cert file -x https://proxy https://example.com 
--proxy-ciphers <list> --ciphers for HTTPS proxies.

curl --proxy-ciphers ECDHE-ECDSA-AES256-CCM8 -x https://proxy https://example.com 
--proxy-crlfile <file> --crlfile for HTTPS proxies.

Beispiel:
curl --proxy-crlfile rejects.txt -x https://proxy https://example.com
--proxy-digest Use HTTP Digest authentication with a proxy.

Beispiel:
curl --proxy-digest --proxy-user user:passwd -x proxy https://example.com 
--proxy-header <header/@file> -H , --header for proxy communication.

Beispiel:
curl --proxy-header "Host:" -x http://proxy https://example.com 
--proxy-insecure -k , --insecure for HTTPS proxies.

Beispiel:
curl --proxy-insecure -x https://proxy https://example.com 
--proxy-key-type <type> --key-type for HTTPS proxies.

Beispiel:
curl --proxy-key-type DER --proxy-key here -x https://proxy https://example.com 
--proxy-key <key> --key for HTTPS proxies.

Beispiel:
curl --proxy-key here -x https://proxy https://example.com 
--proxy-negotiate --negotiate for proxy communication.

Beispiel:
curl --proxy-negotiate --proxy-user user:passwd -x proxy https://example.com
--proxy-ntlm Use HTTP NTLM authentication with a proxy.

Beispiel:
curl --proxy-ntlm --proxy-user user:passwd -x http://proxy https://example.com
--proxy-pass <phrase> --pass for HTTPS proxies.

Beispiel:
curl --proxy-pass secret --proxy-key here -x https://proxy https://example.com 
--proxy-pinnedpubkey <hashes> Specify the public key for proxy verification.

Beispiel:
curl --proxy-pinnedpubkey keyfile https://example.com 
--proxy-service-name <name> Specify the service name for proxy communciation.

Beispiel:
curl --proxy-service-name "shrubbery" -x proxy https://example.com 
--proxy-ssl-allow-beast --ssl-allow-beast for HTTPS proxies.

Beispiel:
curl --proxy-ssl-allow-beast -x https://proxy https://example.com 
--proxy-ssl-auto-client-cert --ssl-auto-client-cert for HTTPS proxies.

Beispiel:
curl --proxy-ssl-auto-client-cert -x https://proxy https://example.com 
--proxy-tls13-ciphers <ciphersuite list> Specifies the list of cipher suites to use in negotiating TLS 1.3 for proxies.

Beispiel:
curl --proxy-tls13-ciphers TLS_AES_128_GCM_SHA256 -x proxy https://example.com
--proxy-tlsauthtype <type> --tlsauthtype for HTTPS proxies.

Beispiel:
curl --proxy-tlsauthtype SRP -x https://proxy https://example.com 
--proxy-tlspassword <string> --tlspassword for HTTPS proxies.

Beispiel:
curl --proxy-tlspassword passwd -x https://proxy https://example.com 
--proxy-tlsuser <name> --tlsuser for HTTPS proxies.

Beispiel:
curl --proxy-tlsuser smith -x https://proxy https://example.com 
--proxy-tlsv1 -1 , --tlsv1 for HTTPS proxies.

Beispiel:
curl --proxy-tlsv1 -x https://proxy https://example.com 
-U, --proxy-user <user:password> Specify the username and password for authenticating with a proxy.

Beispiel:
curl --proxy-user name:pwd -x proxy https://example.com 
-x, --proxy [protocol://]host[:port] Specify a proxy to use.

Beispiel:
curl --proxy http://proxy.example https://example.com 
--proxy1.0 <host[:port]> Specify a HTTP 1.0 proxy to use.

Beispiel:
curl --proxy1.0 -x http://proxy https://example.com 
-p, --proxytunnel Create a proxy tunnel.

Beispiel:
curl --proxytunnel -x http://proxy https://example.com 
--pubkey <key> Provide a file containing a public key.

Beispiel:
curl --pubkey file.pub sftp://example.com/ 
-Q, --quote <command> Send a command to a FTP or SFTP server, to be executed before the transfer.

Beispiel:
curl --quote "rm file" ftp://example.com/foo 
--random-file <file> Specify a file containing random data. This file will be used for seeding the random engine.

Beispiel:
curl --random-file rubbish https://example.com 
-r, --range <range> Obtain a range of bytes.

Beispiel:
curl --range 40-80 https://example.com 
--raw Disable HTTP content decoding and obtain raw data.

Beispiel:
curl --raw https://example.com 
-e, --referer <URL> Send Referrer Page information.

Beispiel:
curl --referer "https://test.example" https://example.com 
-J, --remote-header-name Use header name specified by the server instead of obtaining it from the URL.

Beispiel:
curl -OJ https://example.com/file 
--remote-name-all Apply the -O , --remote-name option to all the URLs.

Beispiel:
curl --remote-name-all ftp://example.com/file1 ftp://example.com/file2 
-O, --remote-name Specify that the local file should have the name of the remote file that was downloaded.

Beispiel:
curl -O https://example.com/filename 
-R, --remote-time Specify that the local file should have the timestamp of the remote file that was downloaded.

Beispiel:
curl --remote-time -o foo https://example.com 
--request-target <path> Specify an alternative target path.

Beispiel:
curl --request-target "*" -X OPTIONS https://example.com 
-X, --request <command> Specify a request method for communication with the server.

Beispiel:
curl -X "DELETE" https://example.com 
--resolve <[+]host:port:addr[,addr]...> Specify a custom address for a host/port.

Beispiel:
curl --resolve example.com:443:127.0.0.1 https://example.com 
--retry-all-errors Force retrying on all errors.

Beispiel:
curl --retry-all-errors https://example.com 
--retry-connrefused Add ECONNREFUSED to the list of errors that are eligible for --retry .

Beispiel:
curl --retry-connrefused --retry https://example.com 
--retry-delay <seconds> Specify the amount of time between retries.

Beispiel:
curl --retry-delay 5 --retry https://example.com 
--retry-max-time <seconds> Specify the maximum amount of time for --retry Versuche.

Beispiel:
curl --retry-max-time 30 --retry 10 https://example.com 
--retry <num> Specify the number of retries after curl encounters and error.

Beispiel:
curl --retry 7 https://example.com
--sasl-authzid <identity> Specify an additional authentication identity for SASL PLAIN authentication.

Beispiel:
curl --sasl-authzid zid imap://example.com/ 
--sasl-ir Enable initial response during SASL authentication.

Beispiel:
curl --sasl-ir imap://example.com/ 
--service-name <name> Specify the SPNEGO service name.

Beispiel:
curl --service-name sockd/server https://example.com 
-S, --show-error Show an error message event with the -s , --silent option enabled.

Beispiel:
curl --show-error --silent https://example.com 
-s, --silent Turn on the silent mode. This option mutes curl.

Beispiel:
curl -s https://example.com 
--socks4 <host[:port]> Specify a SOCKS4 proxy.

Beispiel:
curl --socks4 hostname:4096 https://example.com 
--socks4a <host[:port]> Specify a SOCKS4a proxy.

Beispiel:
curl --socks4a hostname:4096 https://example.com 
--socks5-basic Use the basic authentication method (username/password) with a SOCKS5 proxy.

Beispiel:
curl --socks5-basic --socks5 hostname:4096 https://example.com 
--socks5-gssapi-nec Allow protection mode negotiation to be unprotected.

Beispiel:
curl --socks5-gssapi-nec --socks5 hostname:4096 https://example.com 
--socks5-gssapi-service <name> Change the name of a socks server.

Beispiel:
curl --socks5-gssapi-service sockd --socks5 hostname:4096 https://example.com 
--socks5-gssapi Use GSS-API authentication with a SOCKS5 proxy.

Beispiel:
curl --socks5-gssapi --socks5 hostname:4096 https://example.com 
--socks5-hostname <host[:port]> Specify the SOCKS5 proxy to use.

Beispiel:
curl --socks5-hostname proxy.example:7000 https://example.com 
--socks5 <host[:port]> Specify the SOCKS5 proxy to use. The hostname is resolved locally.

Beispiel:
curl --socks5 proxy.example:7000 https://example.com 
-Y, --speed-limit <speed> Set the lower limit for the download speed.

Beispiel:
curl --speed-limit 300 --speed-time 10 https://example.com 
-y, --speed-time <seconds> Set the time period for the speed limit measurement.

Beispiel:
curl --speed-limit 300 --speed-time 10 https://example.com 
--ssl-allow-beast Tell curl to ignore the BEAST security flaw in the SSL3 and TLS1.0 protocols.

Beispiel:
curl --ssl-allow-beast https://example.com 
--ssl-auto-client-cert Obtain and use a client certificate automatically.

Beispiel:
curl --ssl-auto-client-cert https://example.com 
--ssl-no-revoke Do not check for certificate revocation.

Beispiel:
curl --ssl-no-revoke https://example.com 
--ssl-reqd Require SSL/TLS.

Beispiel:
curl --ssl-reqd ftp://example.com 
--ssl-revoke-best-effort Ignore certificate revocation checks if they failed because of missing distribution points.

Beispiel:
curl --ssl-revoke-best-effort https://example.com 
--ssl Attempt to use SSL.

Beispiel:
curl --ssl pop3://example.com/ 
-2, --sslv2 Use SSLv2. Newer curl versions ignore this request due to security concerns with SSLv2.

Beispiel:
curl --sslv2 https://example.com 
-3, --sslv3 Use SSLv3. Newer curl versions ignore this request due to security concerns with SSLv3.

Beispiel:
curl --sslv3 https://example.com 
--stderr <file> Output stderr to a file. The - symbol tells curl to output stderr to stdout.

Beispiel:
curl --stderr output.txt https://example.com 
--styled-output Enable bold fonts for HTTP header terminal output.

curl --styled-output -I https://example.com 
--suppress-connect-headers Prevent curl from outputting CONNECT headers.

Beispiel:
curl --suppress-connect-headers --include -x proxy https://example.com 
--tcp-fastopen Enable TCP Fast Open.

Beispiel:
curl --tcp-fastopen https://example.com
--tcp-nodelay Enable TCP_NODELAY.

Beispiel:
curl --tcp-nodelay https://example.com 
-t, --telnet-option <opt=val> Pass the TTYPE , XDISPLOC , and NEW_ENV options to the telnet protocol.

Beispiel:
curl -t TTYPE=vt100 telnet://example.com/ 
--tftp-blksize <value> Set the value of TFTP BLKSIZE. Must be a value larger than 512.

Beispiel:
curl --tftp-blksize 1024 tftp://example.com/file 
--tftp-no-options Prevents curl from sending requests for TFTP options.

Beispiel:
curl --tftp-no-options tftp://192.168.0.1/ 
-z, --time-cond <time> Request a document that was modified after a certain date and time. For documents modified before the time, prefix the date expression with a dash.

Beispiel:
curl -z "Wed 01 Sep 2021 12:18:00" https://example.com 
--tls-max <VERSION> Specify the newest TLS version that is supported.

Beispiel:
curl --tls-max 1.2 https://example.com 
--tls13-ciphers <ciphersuite list> Specifies the list of cipher suites to use in negotiating TLS 1.3

Beispiel:
curl --tls13-ciphers TLS_AES_128_GCM_SHA256 https://example.com 
--tlsauthtype <type> Specify the TLS authentication type.

Beispiel:
curl --tlsauthtype SRP https://example.com 
--tlspassword <string> Specify the TLS password.

Beispiel:
curl --tlspassword pwd --tlsuser user https://example.com 
--tlsuser <name> Specify the TLS username.

Beispiel:
curl --tlspassword pwd --tlsuser user https://example.com 
--tlsv1.0 Tell curl to use TLS1.0 or newer.

Beispiel:
curl --tlsv1.0 https://example.com 
--tlsv1.1 Tell curl to use TLS1.1 or newer.

Beispiel:
curl --tlsv1.1 https://example.com 
--tlsv1.2 Tell curl to use TLS1.2 or newer.

Beispiel:
curl --tlsv1.2 https://example.com 
--tlsv1.3 Tell curl to use TLS1.3 or newer.

Beispiel:
curl --tlsv1.3 https://example.com 
-1, --tlsv1 Specify that curl should use at least 1.x version of TLS.

Beispiel:
curl --tlsv1 https://example.com 
--tr-encoding Ask for a compressed Transfer-Encoding response.

Beispiel:
curl --tr-encoding https://example.com 
--trace-ascii <file> Enable a full trace dump to a file. Eliminates the hex part and shows only ASCII.

Beispiel:
curl --trace-ascii log.txt https://example.com 
--trace-time Require a time stamp on each trace or verbose line.

Beispiel:
curl --trace-time --trace-ascii output https://example.com 
--trace <file> Enable a full trace dump to a file.

Beispiel:
curl --trace log.txt https://example.com 
--unix-socket <path> Specify a Unix socket path.

Beispiel:
curl --unix-socket socket-path https://example.com 
-T, --upload-file <file> Upload a file to the URL.

Beispiel:
curl -T "img[1-1000].png" ftp://ftp.example.com/ 
--url <url> Provide a URL to be fetched.

Beispiel:
curl --url https://example.com 
-B, --use-ascii Enable ASCII transfer.

Beispiel:
curl -B ftp://example.com/README 
-A, --user-agent <name> Specify the user agent name.

Beispiel:
curl -A "Agent 007" https://example.com 
-u, --user <user:password> Provide the username and password for authentication.

Beispiel:
curl -u user:secret https://example.com 
-v, --verbose Tell curl to be verbose.

Beispiel:
curl --verbose https://example.com 
-V, --version See the installed versions of curl and libcurl.

Beispiel:
curl --version 
-w, --write-out <format> Tell curl to show information about the completed transfer on stdout.

Beispiel:
curl -w '%{http_code}\n' https://example.com 
--xattr Store file metadata in file attributes.

Beispiel:
curl --xattr -o storage https://example.com 

For comprehensive descriptions of the options, execute the curl --manual command in the terminal.


Ubuntu
  1. Linux-Quellbefehl mit Beispielen

  2. Befehl zum Herunterfahren von Linux mit Beispielen erklärt

  3. Linux Traceroute-Befehl, erklärt mit Beispielen

  4. JQ-Befehl in Linux mit Beispielen

  5. Procinfo-Befehl in Linux Erklärt mit Beispielen

Sortierbefehl in Linux mit Beispielen

Linux-IP-Befehl mit Beispielen

w Befehl mit Beispielen in Linux erklärt

Linux Cat-Befehl mit Beispielen erklärt

Linux tee-Befehl erklärt (mit Beispielen)

Linux csplit Befehl erklärt (mit Beispielen)