Curl ist ein Tool zum Übertragen von Daten von oder zu einem Server, mit einem der unterstützten Protokolle FTP, FTPS, GOPHER, DICT, TELNET, LDAP oder FILE Der Befehl ist entworfen, um ohne Benutzer interaction. curl arbeiten bietet eine Buslast von nützlichen Tricks wie Proxy-Unterstützung, Benutzer-Authentifizierung, FTP-Upload, Post, SSL-Verbindungen, Cookies, Dateiübertragungs-Lebenslauf und mehr Wie Sie unten sehen werden, wird die Menge der Features machen Sie Ihren Kopf spin. curl wird von libcurl für alle Transfer-Funktionen verwendet Siehe libcurl 3 für Details. Die URL-Syntax ist protokollabhängig Sie finden eine detaillierte Beschreibung in RFC 2396.Sie können mehrere URLs oder Teile von URLs durch Schreiben von Teil-Sets in Klammern wie in. or Sie können Sequenzen von alphanumerischen Serien, indem Sie wie in. noch Nesting der Sequenzen wird im Moment unterstützt, aber Sie können mehrere nebeneinander verwenden. Sie können beliebige Anzahl von URLs auf der Kommandozeile angeben Sie werden in einer sequentiellen Weise in der angegebenen Reihenfolge geholt. Curl wird versuchen Um Verbindungen für mehrere Dateiübertragungen wiederzuverwenden, so dass immer viele Dateien vom selben Server nicht mehrfachen Handshakes ausführen. Dies verbessert die Geschwindigkeit. Dies geschieht natürlich nur auf Dateien, die auf einer einzigen Befehlszeile angegeben sind und nicht zwischen separaten Curl-Aufrufen verwendet werden können . FTP Bei Verwendung in einem FTP-Upload, wird dies sagen, curl an die Zieldatei anfügen anstatt zu überschreiben es Wenn die Datei nicht vorhanden ist, wird es erstellt. Wenn diese Option zweimal verwendet wird, wird die zweite deaktiviert Append-Modus wieder. - A - User-Agent-Agent-String. Geben Sie die User-Agent-Zeichenfolge an, die an den Server gesendet werden soll. Einige schlecht bearbeitete CGIs scheitern, wenn sie nicht auf Mozilla gesetzt sind 4 0 Um Leerzeichen in der Zeichenfolge zu codieren, umgeben Sie den String mit einfachen Anführungszeichen. Dies kann auch mit dem - H - Header gesetzt werden Option natürlich. Wenn diese Option mehr als einmal gesetzt ist, wird die letzte diejenige, die verwendet wird. Erzählt, um die Authentifizierungsmethode selbst herauszufinden und die sicherste zu verwenden, die der entfernte Standort behauptet, dass dies unterstützt wird. Dies geschieht, indem er zuerst eine Anforderung durchführt und die Antwort-Header überprüft und damit eine zusätzliche Netzwerkrundfahrt ausführt Festlegen einer bestimmten Authentifizierungsmethode, die Sie mit --basic --digest --ntlm und --negotiate verwenden können. Hinzugefügt 7 7 6. Wenn diese Option mehrmals verwendet wird, machen die folgenden Vorkommnisse keinen Unterschied. Übergeben Sie die Daten an den Server als Cookie Es sind vermutlich die Daten, die zuvor vom Server in einer Set-Cookie-Zeile empfangen wurden. Die Daten sollten im Format NAME1 VALUE1 NAME2 VALUE2 sein. Wenn kein Buchstabe in der Zeile verwendet wird, wird er wie folgt behandelt Ein Dateiname, der verwendet werden soll, um zuvor gespeicherte Cookie-Zeilen zu lesen, die in dieser Sitzung verwendet werden sollen, wenn sie übereinstimmen Mit dieser Methode wird auch der Cookie-Parser aktiviert, der auch eingehende Cookies auflösen wird, was praktisch sein kann, wenn man dies in Kombination verwendet Mit der Option - L --location Das Dateiformat der Datei, um Cookies zu lesen, sollte einfacher Header oder das Netscape Mozilla Cookie Dateiformat sein. HINWEIS, dass die mit - b --cookie angegebene Datei nur als Eingabe verwendet wird. Keine Cookies werden In der Datei gespeichert Um Cookies zu speichern, verwenden Sie die Option - c --cookie-jar oder Sie können die Header sogar in einer Datei mit - D - Dump-Header speichern. Wenn diese Option mehr als einmal eingestellt ist, wird die letzte Seien Sie derjenige, der verwendet wird. Verwenden Sie ASCII-Transfer beim Erhalten einer FTP-Datei oder LDAP-Info Für FTP kann dies auch durch die Verwendung einer URL, die mit Typ A endet, erzwungen werden. Diese Option bewirkt, dass Daten, die an stdout gesendet werden, im Textmodus für Win32-Systeme vorliegen. Wenn diese Option zweimal verwendet wird, wird die zweite ASCII-Nutzung deaktiviert. Tritt curl, um die Standardauthentifizierung zu verwenden Dies ist die Standardeinstellung und diese Option ist normalerweise sinnlos, es sei denn, Sie verwenden es, um eine zuvor eingestellte Option zu überschreiben, die eine andere Authentifizierungsmethode wie z. B. --ntlm --digest und --negotiate eingefügt hat. 7 10 6.Wenn diese Option mehrmals verwendet wird, machen die folgenden Vorkommnisse keinen Unterschied. - Ziffernliste der Ziffern. SSL Gibt an, welche Ziffern in der Verbindung verwendet werden sollen. Die Liste der Ziffern muss mit gültigen Ziffern versehen sein. Lesen Sie auf SSL-Verschlüsselungslistendetails auf dieser URL. Wenn diese Option mehrmals verwendet wird, überschreibt die letzte die anderen. Fordern Sie eine komprimierte Antwort mit einem der Algorithmen an libcurl unterstützt und geben Sie das unkomprimierte Dokument zurück Wenn diese Option verwendet wird und der Server eine nicht unterstützte Codierung sendet, wird Curl einen Fehler melden. Wenn diese Option mehrmals verwendet wird, wird jedes Vorkommen umgeschaltet Off. Maximum Zeit in Sekunden, dass Sie die Verbindung zum Server zu nehmen erlaubt Dies nur begrenzt die Verbindungsphase, sobald curl hat diese Option ist nicht mehr verwenden Siehe auch die - m --max-time-Option. Wenn diese Option ist Verwendet mehrmals wird die letzte verwendet werden.-c - cookie-jar Dateiname. Spezifizieren Sie, welche Datei Sie curl, um alle Cookies nach einer abgeschlossenen Operation schreiben Curl schreibt alle Cookies zuvor aus einer bestimmten Datei sowie alle gelesen Cookies erhalten von Remote-Server s Wenn keine Cookies bekannt sind, wird keine Datei geschrieben Die Datei wird mit dem Netscape-Cookie-Dateiformat geschrieben Wenn Sie den Dateinamen auf einen einzigen Bindestrich setzen, werden die Cookies in stdout. NOTE geschrieben Wenn das Cookie-Jar kann erstellt oder geschrieben werden, die ganze Curl-Operation gewann t fehl oder sogar melden einen Fehler klar Mit - v wird eine Warnung angezeigt, aber das ist die einzige sichtbare Rückmeldung erhalten Sie über diese möglicherweise tödliche Situation. If Diese Option wird mehrmals verwendet, der letzte spezifizierte Dateiname wird verwendet. Weitergehen eine vorherige Dateiübertragung bei dem gegebenen Offset fortsetzen Der angegebene Offset ist die genaue Anzahl der Bytes, die vom Anfang der Quelldatei gezählt werden, bevor es ist Auf das Ziel übertragen Wenn Sie mit Uploads verwendet werden, wird der FTP-Server-Befehl SIZE nicht von curl. Use - C verwendet - um zu sagen, curl, um automatisch herauszufinden, wo wie man die Übertragung fortsetzt. Dann verwendet er die angegebenen Ausgabe-Eingabedateien, um das herauszufinden. Wenn diese Option mehrmals verwendet wird, wird die letzte verwendet. Wenn Sie in Verbindung mit der Option - o verwendet werden, wird curl die notwendige lokale Verzeichnishierarchie nach Bedarf erstellen. Diese Option erzeugt die mit der Option - o erwähnten Verzeichnisse, sonst nichts Wenn der Dateiname - o Dateiname kein Verzeichnis verwendet oder wenn die Verzeichnisse bereits vorhanden sind, wird kein Verzeichnis erstellt. Um Remote-Verzeichnisse bei der Verwendung von FTP zu erstellen, versuchst du --ftp-create-dirs. FTP konvertieren LF zu CRLF im Upload Nützlich für MVS OS 390.Wenn diese Option zweimal verwendet wird, wird die zweite wiederum die Crlf-Konvertierung deaktivieren. Sendet die spezifizierten Daten in eine POST-Anforderung an den Server, so dass es emulieren kann, als ob ein Benutzer ein HTML-Formular ausgefüllt hat und die Schaltfläche "Senden" gedrückt hat. Beachten Sie, dass die Daten genau wie angegeben ohne zusätzliche Verarbeitung mit allen Zeilenumbrüchen gesendet werden Off Die Daten werden voraussichtlich url-codiert Dies führt dazu, dass curl die Daten an den Server über die Content-Type-Anwendung übergibt x-www-form-urlencoded Vergleich zu - F - form Wenn diese Option mehr als einmal verwendet wird Die gleiche Kommandozeile, werden die angegebenen Datenstücke zusammen mit einem Trennungs-Anhang zusammengeführt. So wird mit - d name daniel - d Skill lousy einen Post-Chunk generieren, der wie Name daniel Skill lousy aussieht. Wenn du die Daten mit dem Brief anfängst , Der Rest sollte ein Dateiname sein, um die Daten zu lesen, oder - wenn Sie möchten, dass curl die Daten von stdin lesen kann Der Inhalt der Datei muss bereits url-codiert werden Mehrere Dateien können auch angegeben werden Posting Daten aus einer Datei namens foobar Würde also mit --data foobar gemacht werden. Um die Daten rein binär zu veröffentlichen, solltest du stattdessen die --Daten-binäre Option verwenden. - d --Data ist die gleiche wie - data-ascii. Wenn diese Option mehrmals verwendet wird , Die, die dem ersten folgen, werden Daten angehängt. Dies ist ein Alias für die Option - d --data. Wenn diese Option mehrmals verwendet wird, werden die nach dem ersten folgenden Daten angehängt. Dies gibt Daten in ähnlicher Weise wie - data-ascii tut, obwohl bei Verwendung dieser Option der gesamte Kontext der gebuchten Daten beibehalten wird, wie-is Wenn du eine Binärdatei ohne die Streifen-Zeilenumbruch-Funktion des - Data-ascii-Option, das ist für Sie. Wenn diese Option mehrmals verwendet wird, werden die nach dem ersten angefügten Daten angehängt. Aktiviert die Digest-Authentifizierung Dies ist eine Authentifizierung, die verhindert, dass das Passwort über den Draht in Klartext gesendet wird. Verwenden Sie dies in Kombination mit der normalen Option - u - user, um Benutzernamen und Passwort festzulegen Siehe auch --ntlm - Anyauth für verwandte Optionen hinzugefügt in curl 7 10 6.Wenn diese Option mehrmals verwendet wird, machen die folgenden Vorkommnisse keinen Unterschied. FTP Sagen Sie sich, um die Verwendung der EPRT - und LPRT-Befehle zu deaktivieren, wenn Sie aktive FTP-Transfers durchführen. Curl wird normalerweise immer zuerst versuchen, EPRT, dann LPRT zu verwenden, bevor PORT verwendet wird, aber mit dieser Option wird es PORT sofort verwenden EPRT und LPRT sind Erweiterungen Auf das ursprüngliche FTP-Protokoll, funktioniert möglicherweise nicht auf allen Servern, sondern ermöglicht mehr Funktionalität in einer besseren Weise als der traditionelle PORT-Befehl Angegeben in 7 10 5.Wenn diese Option mehrmals verwendet wird, schaltet jedes Vorkommen dies aus. FTP Tell curl, um die Verwendung des EPSV-Befehls bei passiven FTP-Transfers zu deaktivieren Curl wird normalerweise immer zuerst versuchen, EPSV vor PASV zu verwenden, aber mit dieser Option wird es nicht versuchen, EPSV zu verwenden. Wenn diese Option mehrmals verwendet wird, jedes Vorkommen Schaltet das auf off. Schreiben Sie die Protokoll-Header auf die angegebene Datei. Diese Option ist praktisch zu verwenden, wenn Sie die Header speichern möchten, die eine Website an Sie sendet Cookies aus den Headern konnte dann in einem zweiten curl aufgerufen werden, indem Sie die - b --cookie Option Die - c --cookie-jar Option ist jedoch eine bessere Möglichkeit, Cookies zu speichern. Wenn auf FTP verwendet, werden die FTP-Server-Response-Leitungen als Header betrachtet und werden daher dort gespeichert. Wenn diese Option mehrere verwendet wird Mal wird der letzte verwendet. Sendet die Referer-Seite-Informationen an den Server. Dies kann auch mit dem - H - header-Flag gesetzt werden. Wenn Sie mit - L --location verwendet werden, können Sie das Auto automatisch an die Referenz-URL anhängen, damit curl automatisch die vorherige URL festlegt, wenn es folgt Ein Ort-Header Der Auto-String kann alleine verwendet werden, auch wenn Sie nicht einen ersten Referer setzen. Wenn diese Option mehrmals verwendet wird, wird der letzte verwendet. RISC OS NUR Setzt eine Reihe von Umgebungsvariablen, wobei die Namen der Option - w unterstützt werden, um es einfacher zu ermöglichen, nützliche Informationen zu extrahieren, nachdem sie curl ausgeführt haben. Wenn diese Option mehrmals verwendet wird, schaltet jedes Vorkommen dieses aus. Geben Sie den Pfadnamen an die Entropy Gathering Daemon Socket an. Der Socket wird verwendet, um die zufällige Engine für SSL-Verbindungen zu sehen. Siehe auch die Option --random-file. Zeigt an, dass die angegebene Zertifikatdatei beim Abrufen einer Datei mit dem Zertifikat im PEM-Format verwendet werden soll. Wenn das optionale Passwort nicht angegeben ist, wird es für das Terminal abgefragt. Beachten Sie, dass dieses Zertifikat der private Schlüssel ist und das private Zertifikat verkettet ist. Wenn diese Option mehrmals verwendet wird, wird die letzte verwendet. SSL Zeigt an, welche Zertifikatstypen das angegebene Zertifikat in PEM, DER und ENG sind, sind anerkannte Typen. Wenn diese Option mehrmals verwendet wird, wird die letzte verwendet. - cacert CA Zertifikat. Zeigt curl an, um die angegebene Zertifikatdatei zu verwenden, um den Peer zu verifizieren Die Datei kann mehrere CA-Zertifikate enthalten. Das Zertifikat muss im PEM-Format vorliegen. curl erkennt die Umgebungsvariable namens CURLCABUNDLE, wenn das gesetzt ist, und verwendet den angegebenen Pfad als Pfad zu einem CA-Zertifikat-Bündel Diese Option überschreibt diese Variable. Die Windows-Version von curl sucht automatisch nach einer CA-Certs-Datei, die entweder im selben Verzeichnis wie oder im aktuellen Arbeitsverzeichnis oder in einem beliebigen Ordner auf Ihrem PATH. Wenn diese Option verwendet wird Mehrmals wird die letzte verwendet. - capath CA Zertifikatverzeichnis. Zeigt curl an, um das angegebene Zertifikatverzeichnis zu verwenden, um den Peer zu verifizieren. Die Zertifikate müssen im PEM-Format vorliegen und das Verzeichnis muss mit dem mit openssl gelieferten crehash-Dienstprogramm verarbeitet worden sein. Mit --capath kann es möglich sein, dass locker Verbindungen viel effizienter macht als mit - - cacert, wenn die --cacert-Datei viele CA-Zertifikate enthält. Wenn diese Option mehrmals verwendet wird, wird die letzte verwendet. Fail leise keine Ausgabe überhaupt auf Serverfehler Dies geschieht meistens so, um Skripts usw. besser zu aktivieren, um besser mit fehlgeschlagenen Versuchen umzugehen. In normalen Fällen, in denen ein Server kein Dokument liefert, gibt es ein HTML-Dokument zurück, das so oft auch beschreibt, warum Und mehr Diese Markierung verhindert, dass Curl die Ausgabe ausgibt und stattdessen schweigend schweigt. Wenn diese Option zweimal verwendet wird, wird die zweite wieder einen stillen Ausfall deaktivieren. FTP Wenn eine FTP-URL-Operation einen Pfad verwendet, der derzeit nicht auf dem Server vorhanden ist, ist das Standardverhalten von curl zu scheitern Mit dieser Option wird curl stattdessen versuchen, fehlende Verzeichnisse zu erstellen, die in 7 10 7 hinzugefügt werden. Wenn diese Option zweimal verwendet wird , Wird der zweite wieder stille Ausfall deaktivieren. FTP PASV verwenden bei der Übertragung von PASV ist das interne Default-Verhalten, aber mit dieser Option kann verwendet werden, um eine Previos - ftp-Port-Option zu überschreiben Hinzugefügt in 7 11 0.Wenn diese Option zweimal verwendet wird, wird die zweite wieder deaktivieren stille Ausfall. FTP Machen Sie den FTP-Verbindungsschalter, um SSL TLS zu verwenden, der in 7 11 0 hinzugefügt wurde. Wenn diese Option zweimal verwendet wird, wird die zweite wieder deaktiviert. Damit können Sie eine ausgefüllte Formulierung emulieren, in der ein Benutzer die Schaltfläche "Senden" gedrückt hat. Dies führt dazu, dass die POST-Daten mit den Share-Type-Multipart-Formulardaten nach RFC1867 gedrückt werden. Dies ermöglicht das Hochladen von Binärdateien usw. Um den Inhaltsteil zu erzwingen, Eine Datei, präfix den Dateinamen mit einem Zeichen Um nur den Inhalt Teil aus einer Datei, Präfix der Dateiname mit dem Buchstaben Der Unterschied zwischen und ist dann, dass eine Datei in der Post als Datei hochgeladen wird, während die macht Ein Textfeld und bekomme einfach den Inhalt für das Textfeld aus einer Datei. Beispiel, um Ihre Passwort-Datei an den Server zu senden, wo Passwort ist der Name des Formular-Feld, auf die etc passwd wird die input. curl - F Passwort Etc passwd. To lesen Sie die Datei s Inhalt von stdin insted einer Datei, verwenden Sie - wo der Dateiname sollte ve Dies Dies gilt für beide und konstrukte. Sie können auch sagen, curl, was Content-Typ zu verwenden, indem Sie Typ, in einer Weise Ähnlich wie. curl - F name danieltype text foo. Sie weitere Beispiele und Details in der MANUAL. This Option kann mehrfach verwendet werden. Diese Option schaltet den URL Globbing Parser Wenn Sie diese Option setzen, können Sie URLs angeben, die die Buchstaben enthalten Ohne dass sie von curl selbst interpretiert werden Beachten Sie, dass diese Briefe keine normalen rechtlichen URL-Inhalte sind, aber sie sollten nach dem URI-Standard codiert werden. Wenn diese Option verwendet wird, werden alle Daten mit - d-Data oder --Daten - Binärdatei, die in einer GET-Anfrage anstelle der POST-Anforderung verwendet werden soll, die sonst verwendet werden würde. Die Daten werden an die URL mit einem separator angehängt. Wird in Kombination mit - I verwendet, werden die POST-Daten stattdessen an die URL mit einem angehängt HEAD request. If mehrfach verwendet, geschieht nichts Besonderes. Extra-Header für die Benutzung einer Webseite Sie können eine beliebige Anzahl von zusätzlichen Headern angeben. Beachten Sie, dass, wenn Sie einen benutzerdefinierten Header hinzufügen sollten, der denselben Namen hat wie eine der internen, die verwendet wird, wird Ihr extern eingestellter Header anstelle von verwendet Die interne Eins Dies ermöglicht es Ihnen, noch schwierigere Sachen zu machen, als Curl würde normalerweise tun Sie sollten nicht ersetzen intern eingestellte Header, ohne zu wissen, ganz genau, was Sie tun. Ersetzen eines internen Headers mit einem ohne Inhalt auf der rechten Seite des Dickdarms wird verhindern, dass Header Aus erscheinen. Siehe auch die - A - User-Agent und - e - referer options. This Option kann mehrfach verwendet werden, um hinzuzufügen ersetzen entfernen mehrere Header. Fügen Sie die in der Ausgabe ein. Enthält die Dinge wie Server-Name, Datum des Dokuments und vieles mehr. Wenn diese Option zweimal verwendet wird, wird die zweite wieder deaktiviert Header include. Perform eine Operation mit einer bestimmten Schnittstelle Sie können Schnittstelle Namen, IP eingeben Adresse oder Hostname Ein Beispiel könnte aussehen. Wenn diese Option mehrmals verwendet wird, wird die letzte verwendet. Holen Sie die einzige Funktion den Befehl HEAD, die es verwendet, um nichts als die Kopfzeile eines Dokuments zu erhalten Wenn Sie auf einer FTP - oder FILE-Datei verwendet werden, zeigt curl die Dateigröße und die letzte Änderungszeit nur an. Wenn diese Option zweimal verwendet wird, wird die zweite wieder Header nur hemmen. Wenn Curl gesagt wird, um Cookies aus einer gegebenen Datei zu lesen, wird diese Option es verwerfen alle Session-Cookies Dies wird im Grunde die gleiche Wirkung haben, als wenn eine neue Session gestartet wird Typische Browser immer verwerfen Session-Cookies, wenn sie wieder geschlossen Hinzufügen in 7 9 7.Wenn diese Option mehrmals verwendet wird, schaltet jedes Vorkommen dies aus. SSL Diese Option erlaubt explizit, dass locken unsichere SSL-Verbindungen und Transfers ausführen. Mit curl 7 10 werden alle SSL-Verbindungen versucht, mit dem CA-Zertifikat-Bundle, das standardmäßig installiert ist, sicher zu machen. Damit werden alle Verbindungen als unsicher erkannt, wenn - k - - insecure wird verwendet. Wenn diese Option zweimal verwendet wird, wird das zweite Mal wieder deaktivieren. SSL Private Key Dateiname Ermöglicht es Ihnen, Ihren privaten Schlüssel in dieser separaten Datei anzugeben. Wenn diese Option mehrmals verwendet wird, wird die letzte verwendet. SSL Private Key Dateityp Geben Sie an, welcher Typ Ihre - Taste ist, wenn der private Schlüssel DER, PEM und ENG unterstützt wird. Wenn diese Option mehrmals verwendet wird, wird die letzte verwendet. FTP Aktivieren Sie die kerberos4-Authentifizierung und verwenden Sie die Ebene muss eingegeben werden und sollte eine von klar, sicher, vertraulich oder privat sein Sollten Sie eine Ebene verwenden, die nicht einer von diesen ist, wird privat stattdessen verwendet. Diese Option verlangt, dass die Bibliothek mit gebaut wurde Kerberos4 support Dies ist nicht sehr verbreitet Verwenden Sie - V --version, um zu sehen, ob Ihr curl es unterstützt. Wenn diese Option mehrmals verwendet wird, wird die letzte verwendet. - K --config config file. Spezifizieren Sie welche Konfigurationsdatei zu lesen Curl Argumente aus der Konfigurationsdatei ist eine Textdatei, in der Befehlszeilenargumente geschrieben werden können, die dann verwendet werden, als ob sie auf die eigentliche Befehlszeile geschrieben wurden. Optionen und deren Parameter müssen auf der gleichen Konfigurationsdatei angegeben werden. Wenn der Parameter ist Um Leerzeichen zu enthalten, muss der Parameter innerhalb von Anführungszeichen eingeschlossen werden Wenn die erste Spalte einer Konfigurationszeile ein Zeichen ist, wird der Rest der Zeile als Kommentar behandelt. Geben Sie den Dateinamen an, um - curl die Datei von stdin zu lesen. Beachten Sie, dass in der Lage sein, eine URL in der Konfigurationsdatei anzugeben, müssen Sie es mit der Option --url angeben und nicht einfach die URL auf die eigene Zeile schreiben. So könnte es ähnlich aussehen. Diese Option kann sein Verwendet mehrfache Zeit. Spezifizieren Sie die maximale Übertragungsrate, die Sie curl verwenden möchten Diese Funktion ist nützlich, wenn Sie eine begrenzte Pfeife haben und Sie d wie Ihre Übertragung nicht Ihre gesamte Bandbreite verwenden. Die angegebene Geschwindigkeit wird in Bytes Sekunden gemessen, es sei denn, ein Suffix ist angehängt Anhängen von k oder K wird die Zahl als Kilobyte zählen, m oder M macht es Megabyte, während g oder G macht es Gigabytes Beispiele 200K, 3m und 1G. Wenn Sie auch die Option - Y - Geschwindigkeitsbegrenzung verwenden, wird diese Option nehmen Vorrang und kann die Rate-Begrenzung leicht zu lähmen, um zu helfen, die Geschwindigkeit-Limit-Logik arbeiten. Diese Option wurde in curl 7 eingeführt 10.Wenn diese Option mehrmals verwendet wird, wird die letzte verwendet werden. FTP Bei der Auflistung eines FTP-Verzeichnisses zwingt dieser Schalter eine Namens-Nur-Ansicht. Besonders nützlich, wenn Sie den Inhalt eines FTP-Verzeichnisses maschinell parsen möchten, da die normale Verzeichnisansicht kein Standard-Look oder - Format verwendet. Diese Option verursacht einen FTP-NLST Befehl zu senden Einige FTP-Server Liste nur Dateien in ihrer Antwort auf NLST sie nicht enthalten Unterverzeichnisse und symbolische Links. Wenn diese Option zweimal verwendet wird, wird die zweite wieder deaktivieren Liste nur. Wenn der Server meldet, dass die angeforderte Seite einen anderen Ort hat, der mit der Kopfzeile angezeigt wird, wird diese Markierung den Versuch versetzen, den neuen Platz zu ersetzen. Wenn sie zusammen mit - i - Include - oder - I-Kopf-Headern verwendet werden Angeforderte Seiten werden angezeigt Wenn die Authentifizierung verwendet wird, wird curl nur ihre Anmeldeinformationen an den ursprünglichen Host senden, also wenn ein Redirect auf einen anderen Host lockt, gewann er das Intervall abfangen Siehe auch --location-vertrauenswürdig wie man es ändert This. Wenn diese Option zweimal verwendet wird, wird die zweite wieder die Position deaktiviert. Wie - L-Verknüpfung erlaubt es aber, das Namenskennwort an alle Hosts zu senden, die die Website weiterleiten kann. Dies kann oder kann nicht eine Sicherheitsverletzung einführen, wenn die Website eine Website umleitet, auf die du deine Authentifizierungsinformationen sendet, die Klartext ist Im Falle von Basic-Authentifizierung. Wenn diese Option zweimal verwendet wird, wird die zweite wieder deaktivieren Ort nach. Specify die maximale Größe in Bytes einer Datei zum Download Wenn die angeforderte Datei größer als dieser Wert ist, wird die Übertragung nicht starten und curl Wird mit dem Exit-Code zurückgegeben 63.NOTE Die Dateigröße ist nicht immer vor dem Download bekannt, und für solche Dateien hat diese Option keine Wirkung, auch wenn die Dateiübertragung endet größer als diese gegebene Grenze Dies betrifft sowohl FTP als auch Transfers. Maximale Zeit In Sekunden, die Sie erlauben die ganze Operation zu nehmen Dies ist nützlich für die Verhinderung Ihrer Batch-Jobs aus Stunden hängen aufgrund langsamer Netzwerke oder Links nach unten Dies doesn t Arbeit voll in Win32-Systeme Siehe auch die Option --connect-timeout. If dies Option wird mehrmals verwendet, die letzte wird verwendet. Manual Display die riesige Hilfe text. Makes curl scannen Sie die Datei im Benutzer s Home-Verzeichnis für Login-Namen und Passwort Dies ist in der Regel für ftp auf Unix verwendet Wenn verwendet mit curl aktiviert wird Benutzer-Authentifizierung Siehe netrc 4 oder ftp 1 für Details zum Dateiformat Curl wird sich nicht beschweren, wenn diese Datei nicht die richtigen Berechtigungen hat, sollte es nicht Welt oder Gruppe lesbar sein. Die Umgebungsvariable HOME wird verwendet, um das Home-Verzeichnis zu finden. Schnell und sehr Einfaches Beispiel für die Einrichtung eines zu erlauben curl zu ftp auf die Maschine mit Benutzernamen selbst und password. machine Login mir Passwort Geheimnis. Wenn diese Option zweimal verwendet wird, wird die zweite wieder deaktivieren netrc Nutzung. Sehr ähnlich wie --netrc aber Diese Option macht die Nutzung optional und nicht zwingend wie die --netrc tut. Aktiviert die GSS-Negotiate-Authentifizierung Die GSS-Negotiate-Methode wurde von Microsoft entworfen und wird in ihren Web-Applikationen verwendet. Es ist in erster Linie als Unterstützung für die Kerberos5-Authentifizierung gedacht, kann aber auch zusammen mit anderen Authentifizierungsmethoden verwendet werden. Weitere Informationen finden Sie unter IETF-Entwurf 10 6.Diese Option verlangt, dass die Bibliothek mit GSSAPI-Unterstützung gebaut wurde Dies ist nicht sehr häufig Verwenden Sie - V - Version, um zu sehen, ob Ihre Version GSS-Negotiate unterstützt. Wenn diese Option mehrmals verwendet wird, machen die folgenden Vorkommnisse keinen Unterschied. Deaktiviert die Pufferung des Ausgabestroms In normalen Arbeitssituationen wird curl einen standardmäßig gepufferten Ausgabestream verwenden, der die Wirkung hat, dass er die Daten in Chunks ausgeben wird, nicht unbedingt genau, wenn die Daten ankommen. Mit dieser Option wird diese Pufferung deaktiviert Diese Option wird zweimal verwendet, die zweite wird wieder Pufferung. Aktiviert NTLM-Authentifizierung Die NTLM-Authentifizierungsmethode wurde von Microsoft entworfen und wird von IIS-Webservern verwendet. Es handelt sich um ein proprietäres Protokoll, umgekehrt, das von cleveren Mitarbeitern konstruiert wurde und in Curl auf der Grundlage ihrer Bemühungen implementiert wurde. Diese Art von Verhalten sollte nicht unterstützt werden, Sie sollten alle ermutigen Wer NTLM verwendet, um auf eine öffentliche und dokumentierte Authentifizierungsmethode zu wechseln, wie zB Digest Hinzugefügt in 7 10 6.Wenn Sie NTLM für Ihre Proxy-Authentifizierung aktivieren möchten, dann verwenden Sie --proxy-ntlm. Diese Option erfordert, dass die Bibliothek mit gebaut wurde SSL-Unterstützung Verwenden Sie - V - Version, um zu sehen, ob Ihre curl NTLM unterstützt. Wenn diese Option mehrmals verwendet wird, machen die folgenden Vorkommnisse keinen Unterschied. Schreiben Sie die Ausgabe an Datei statt Stdout Wenn Sie verwenden oder um mehrere Dokumente zu holen, können Sie Verwendung gefolgt von einer Zahl im Dateispezifizierer Diese Variable wird durch den aktuellen String ersetzt, damit die URL geholt wird Wie in. curl - o. or verwenden Sie mehrere Variablen wie. curl - o 1 2.Sie können diese Option so oft verwenden Wie Sie haben die Anzahl der URLs. Siehe auch die Option --create-dirs, um die lokalen Verzeichnisse dynamisch zu erstellen. Schreiben Sie die Ausgabe auf eine lokale Datei namens wie die Remote-Datei erhalten wir Nur die Datei Teil der Remote-Datei verwendet wird, ist der Pfad Sie können diese Option so oft verwenden, wie Sie die Anzahl der URLs haben. SSL Pass Phrase für den privaten Schlüssel. Wenn diese Option mehrmals verwendet wird, wird die letzte verwendet werden. Tells curl zu verwenden Standard-Authentifizierung bei der Kommunikation mit dem angegebenen Proxy Verwenden Sie --basic für die Aktivierung Basic mit einem Remote-Host Basic ist die Standardeinstellung Authentifizierungsmethode curl verwendet mit Proxies. Wenn diese Option zweimal verwendet wird, wird die zweite wieder deaktivieren Proxy Basic Authentication. Tells curl zu verwenden Digest Authentifizierung bei der Kommunikation mit dem angegebenen Proxy Verwenden Sie --destest für die Aktivierung von Digest mit einem Remote-Host. Wenn diese Option Wird zweimal verwendet, die zweite wird wieder deaktivieren Proxy Digest. Tells curl, um NTLM-Authentifizierung bei der Kommunikation mit dem angegebenen Proxy verwenden Verwenden Sie --ntlm für die Aktivierung von NTLM mit einem Remote-Host. Wenn diese Option zweimal verwendet wird, wird die zweite wieder deaktivieren Proxy NTLM. Wenn ein Proxy verwendet wird - x - proxy, wird diese Option dazu führen, dass Protokolle versuchen, durch den Proxy zu tunneln, anstatt sie nur zu verwenden, um Operationen durchzuführen. Der Tunnelansatz wird mit der Proxy-CONNECT-Anforderung gemacht und erfordert, dass der Proxy die direkte Verbindung ermöglicht Auf die entfernte Portnummer curl will durch Tunnel durch zu. Wenn diese Option zweimal verwendet wird, wird die zweite wieder den Proxy-Tunnel deaktivieren. FTP Reversiert die Initiator-Listener-Rollen bei der Verbindung mit ftp Dieser Schalter macht Curl den PORT-Befehl anstelle von PASV In der Praxis sagt PORT dem Server, sich mit der angegebenen Adresse und dem Port des Clients zu verbinden, während PASV den Server nach einer IP-Adresse und einem Port fragt Um eine Verbindung zu der Adresse zu knüpfen, sollte eine von interface. ie eth0 sein, um festzulegen, welche Schnittstelle s IP-Adresse Sie nur Unix verwenden möchten. 192 168 10 1, um die genaue IP-Nummer anzugeben, um die Maschine anzugeben. Wenn der erste Parameter auf dem Befehlszeile wird die Datei nicht gelesen und als Konfigurationsdatei verwendet. FTP Senden Sie einen beliebigen Befehl an den entfernten FTP-Server Zitat-Befehle werden gesendet, bevor die Übertragung stattfindet Um Befehle nach einer erfolgreichen Übertragung zu machen, präfix sie mit einem Bindestrich - Sie können beliebig viele Befehle angeben, die vor und nach dem Übertragung Wenn der Server einen Fehler für einen der Befehle zurückgibt, wird der gesamte Vorgang abgebrochen. Sie müssen syntaktisch korrekte FTP-Befehle senden, wie RFC959 definiert. Diese Option kann mehrfach verwendet werden. Geben Sie den Pfadnamen in die Datei an, die das enthält, was als zufällige Daten betrachtet wird. Die Daten werden verwendet, um die zufällige Engine für SSL-Verbindungen zu sehen. Siehe auch die Option --egd-file. Abrufen eines Bytebereichs iea Teildokument von einem oder FTP-Server Ranges können in einer Reihe von Möglichkeiten spezifiziert werden. Spezifiziert 300 Bytes aus Offset 500 H. Speichert zwei separate 100 Bytes Bereiche H. HINWEIS, dass dies dazu führt, dass der Server mit einem Multipart antworten wird Antwort. Sie sollten auch bewusst sein, dass viele Server nicht diese Funktion aktiviert haben, so dass, wenn Sie versuchen, eine Reichweite zu bekommen, werden Sie stattdessen die ganze document. FTP Bereich Downloads nur unterstützen die einfache Syntax Start-Stop optional mit einem von Die Zahlen weggelassen Es hängt von der nicht-RFC-Befehl SIZE. Wenn diese Option mehrmals verwendet wird, wird die letzte verwendet werden - R - remote-time. Wenn verwendet, wird dies libcurl versuchen, um herauszufinden, die Zeitstempel der Remote-Datei, und wenn das vorhanden ist, machen die lokale Datei erhalten die gleiche Zeitstempel. Wenn diese Option zweimal verwendet wird, das zweite Mal deaktiviert dies wieder. Silent-Modus Don t zeigen Fortschrittsanzeige oder Fehlermeldungen macht Curl mute. Wenn diese Option verwendet wird Zweimal, die zweite wird wieder deaktivieren mute. When verwendet mit - s es macht curl zeigen Fehlermeldung, wenn es fehlschlägt. Wenn diese Option zweimal verwendet wird, wird die zweite wieder deaktivieren show error. Use die angegebene SOCKS5 Proxy Wenn die Portnummer nicht ist Spezifiziert wird es bei Port 1080 angenommen Option hinzugefügt in 7 11 1.Diese Option überschreibt jede vorherige Verwendung von - x - Proxy, wie sie sich gegenseitig ausschließen. Wenn diese Option mehrmals verwendet wird, wird die letzte verwendet werden. Redirect alle Schreibt an stderr an die angegebene Datei stattdessen Wenn der Dateiname ein einfacher ist - wird es stattdessen in stdout geschrieben. Diese Option hat keinen Sinn, wenn du eine Shell mit anständigen Umleitungsfähigkeiten verwende. Wenn diese Option mehrmals verwendet wird, die letzte Wird verwendet. Schalten Sie die TCPNODELAY-Option Siehe die curleasysetopt 3 man-Seite für Details über diese Option hinzugefügt in 7 11 2.Wenn diese Option mehrmals verwendet wird, schaltet jedes Vorkommen dies auf off. Pass-Optionen auf das Telnet-Protokoll Unterstützte Optionen sind. TTYPE-Term Stellt die Klemme ein. XDISPLOC X-Anzeige Stellt den X-Anzeigeort ein. NEWENV var, val Setzt eine Umgebungsvariable. This überträgt die angegebene lokale Datei auf die entfernte URL Wenn kein Dateipart in der angegebenen URL vorhanden ist, wird Curl angehängt Der lokale Dateiname HINWEIS, dass Sie eine nachlaufende auf dem letzten Verzeichnis verwenden müssen, um wirklich zu beweisen, dass es keinen Dateinamen oder curl gibt, dass Ihr letzter Verzeichnisname der entfernte Dateiname ist, der verwendet werden soll. Das wird höchstwahrscheinlich den Uploadvorgang verursachen Zu scheitern Wenn dies auf einem Server verwendet wird, wird der PUT-Befehl verwendet. Verwenden Sie den Dateinamen - einen einzigen Bindestrich, um stdin anstelle einer gegebenen Datei zu verwenden. Vor 7 10 8, wenn diese Option mehrmals verwendet wurde, die letzte Wurde verwendet. In curl 7 10 8 und später können Sie eine - T für jede URL auf der Kommandozeile angeben. Jedes URL-Paar-Paket gibt an, was hochgeladen werden soll und wo curl auch das Globieren des Arguments - T unterstützt, was bedeutet, dass du kannst Laden Sie mehrere Dateien auf eine einzelne URL, indem Sie denselben URL-Globbing-Stil verwenden, der in der URL unterstützt wird. Dies ist ein vollständiger Trace-Dump aller eingehenden und ausgehenden Daten, einschließlich beschreibender Informationen, zur angegebenen Ausgabedatei. Verwenden Sie - als Dateiname, Ausgabe, die an stdout gesendet wird. Wenn diese Option mehrmals verwendet wird, wird die letzte verwendet. Hinzugefügt in 7 9 7.Enables eine vollständige Trace-Dump aller eingehenden und ausgehenden Daten, einschließlich beschreibender Informationen, zur angegebenen Ausgabedatei Verwendung - als Dateiname Um die Ausgabe an stdout gesendet zu haben. Dies ist sehr ähnlich zu --trace aber verlässt den Hex-Teil und zeigt nur den ASCII-Teil des Dumps Es macht kleinere Ausgabe, die leichter für untrainierte Menschen zu lesen ist. Wenn diese Option verwendet wird Mehrmals wird die letzte verwendet werden hinzugefügt in 7 9 7.Spezifizieren Sie Benutzer und Passwort für die Server-Authentifizierung verwenden. Wenn diese Option mehrmals verwendet wird, wird die letzte verwendet werden. Spezifizieren Sie Benutzer und Passwort für die Proxy-Authentifizierung verwenden. Wenn diese Option mehrmals verwendet wird, wird die letzte verwendet. Spezifizieren Sie eine URL zum Abrufen Diese Option ist meistens praktisch, wenn Sie URLs in einer Konfigurationsdatei angeben möchten. Diese Option kann beliebig oft verwendet werden URL ist geschrieben, benutze den - o - output oder die - O - remote-name options. Makes das Abrufen mehr ausführliches gesprächig Meist verwendbar für das Debugging Lines beginnend mit Mitteldaten, die durch curl gesendet werden, bedeutet Daten, die durch curl erhalten werden, die verborgen ist normal cases and lines starting with means additional info provided by curl. Note that if you want to see headers in the output, - i --include might be option you re looking for. If you think this option still doesn t give you enough details , consider using --trace or --trace-ascii instead. If this option is used twice, the second will again disable verbose. Displays information about curl and the libcurl version it uses. The first line includes the full version of curl, libcurl and other 3rd party libraries linked with the executable. The second line starts with Protocols shows all protocols that libcurl reports to support. The third line starts with Features shows specific features libcurl reports to offer Available features include. This curl supports IDN - international domain names. Defines what to display after a completed and successful operation The format is a string that may contain plain text mixed with any number of variables The string can be specified as string , to get read from a particular file you specify it filename and to tell curl to read the format from stdin you write. The variables present in the output format will be substituted by the value or text that curl thinks fit, as described below All variables are specified like and to output a normal you just write them like You can output a newline by using n, a carriage return with r and a tab space with t. NOTE The - letter is a special letter in the win32-environment, where all occurrences of must be doubled when using this option. Available variables are at this point. The URL that was fetched last This is mostly meaningful if you ve told curl to follow location headers. The numerical code that was found in the last retrieved page. The total time, in seconds, that the full operation lasted The time will be displayed with millisecond resolution. The time, in seconds, it took from the start until the name resolving was completed. The time, in seconds, it took from the start until the connect to the remote host or proxy was completed. The time, in seconds , it took from the start until the file transfer is just about to begin This includes all pre-transfer commands and negotiations that are specific to the particular protocol s involved. The time, in seconds, it took from the start until the first byte is just about to be transfered This includes timepretransfer and also the time the server needs to calculate the result. The total amount of bytes that were downloaded. The total amount of bytes that were uploaded. The total amount of bytes of the downloaded headers. The total amount of bytes that were sent in the request. The average download speed that curl measured for the complete download. The average upload speed that curl measured for the complete upload. The Content-Type of the requested document, if there was any Added in 7 9 5.If this option is used several times, the last one will be used - x --proxy proxyhost port. Use specified proxy If the port number is not specified, it is assumed at port 1080.This option overrides existing environment variables that sets proxy to use If there s an environment variable setting a proxy, you can set proxy to to override it. Note that all operations that are performed over a proxy will transparantly be converted to It means that certain protocol specific operations might not be available This is not the case if you can tunnel through the proxy, as done with the - p --proxytunnel option. If this option is used several times, the last one will be used. Specifies a custom request to use when communicating with the server The specified request will be used instead of the standard GET Read the 1 1 specification for details and explanations. FTP Specifies a custom FTP command to use instead of LIST when doing file lists with ftp. If this option is used several times, the last one will be used. If a download is slower than speed-limit bytes per second during a speed-time period, the download gets aborted If speed-time is used, the default speed-limit will be 1 unless set with - y. This option controls transfers and thus will not affect slow connects etc If this is a concern for you, try the --connect-timeout option. If this option is used several times, the last one will be used. If a download is slower than this given speed, in bytes per second, for speed-time seconds it gets aborted speed-time is set with - Y and is 30 if not set. If this option is used several times, the last one will be used.-z --time-cond date expression. Request a file that has been modified later than the given time and date, or one that has been modified before that time The date expression can be all sorts of date strings or if it doesn t match any internal ones, it tries to get the time from a given file name instead See the curlgetdate 3 man pages for date expression details. Start the date expression with a dash - to make it request for a document that is older than the given date time, default is a document that is newer than the specified date time. If this option is used several times, the last one will be used. Set maximum number of redirection-followings allowed If - L --location is used, this option can be used to prevent curl from following redirections in absurdum. If this option is used several times, the last one will be used. Forces curl to issue its requests using 1 0 instead of using its internally preferred 1 1. Forces curl to use TSL version 1 when negotiating with a remote TLS server. Forces curl to use SSL version 2 when negotiating with a remote SSL server. Forces curl to use SSL version 3 when negotiating with a remote SSL server. If libcurl is capable of resolving an address to multiple IP versions which it is if it is ipv6-capable , this option tells libcurl to resolve names to IPv4 addresses only Added in 7 10 8.If libcurl is capable of resolving an address to multiple IP versions which it is if it is ipv6-capable , this option tells libcurl to resolve names to IPv6 addresses only Added in 7 10 8.Make curl display progress information as a progress bar instead of the default statistics. If this option is used twice, the second will again disable the progress bar. Default config file. So basically, I m trying to write a series of scripts to interact with Dot Net Nuke I ve been analysing the traffic and can now login and do some basic tasks However, I ve never handled binary file upload with curl Would someone be willing to look at this to help me out Here s the anatomy of the request. Here s what I ve got for curl so far. edit For the lazy. length of the file is achieved and stored in LENGTH Bullshit is just a copy paste of the request URL with parameters, minus the URL itself. Thanks for the response Unfortunately, nothing manages to happen Would it be possible for you to take a quick look at the post anatomy How would you add in something like ------WebKitFormBoundarymXQVUy6BiZBV3AxA Content-Disposition form-data name RadFileExplorer1 currentFolder Portals 0 Images Test to a curl command Would that be via header Or since it has a name would it be via regular post data user798080 Feb 3 12 at 19 58.As I proper remember for POST request there exist different coding schema may be to manage FORM html tag gavenkoa Feb 3 12 at 20 03.Well normally with curl you can say something like curl - d username cheese password 123456 url , but it also looks drastically different when I inspect it with Chrome Firebug I certainly don t see Content-Disposition among other things I don t know if there needs to be a special version of POST data when you re submitting plaintext and binary data user798080 Feb 3 12 at 20 07.If that question is connected to your other Hudson questions use the command they provide. You need to change it a little bit to read from a file. Read the manpage following an abstract for - d Parameter. Sends the specified data in a POST request to the server, in the same way that a browser does when a user has filled in an HTML form and presses the submit button This will cause curl to pass the data to the server using the content-type application x-www-form-urlencoded Compare to - F --form.-d --data is the same as --data-ascii To post data purely binary, you should instead use the --data-binary option To URL-encode the value of a form field you may use --data-urlencode. If any of these options is used more than once on the same command line, the data pieces specified will be merged together with a separating - symbol Thus, using - d name daniel - d skill lousy would generate a post chunk that looks like name daniel skill lousy. If you start the data with the letter , the rest should be a file name to read the data from, or - if you want curl to read the data from stdin The contents of the file must already be URL-encoded Multiple files can also be specified Posting data from a file named foobar would thus be done with --data foobar. answered Jun 9 10 at 17 55.From the manpage I believe these are the droids you are looking for. This lets curl emulate a filled-in form in which a user has pressed the submit button This causes curl to POST data using the Content-Type multipart form-data according to RFC2388 This enables uploading of binary files etc To force the content part to be a file, prefix the file name with an sign. Example, to send your password file to the server, where password is the name of the form-field to which etc passwd will be the input. curl - F password etc passwd. So in your case, this would be something like curl - F file some file on your local disk. answered Jun 9 10 at 15 48.This solution has the added benefit of being able to name the file being sent unlike the chosen solution above , and you can therefore e g send multiple files David Cairns Jun 14 11 at 20 21.The format file - is helpful if you want to pipe your file in Steven Lu Jul 24 13 at 6 28.In case anyone is looking to send a file and other information use - F key val - F key val as many times as you need Enclosing all post parameters in one large string separated by does not work hgolov Jan 20 14 at 12 24.With Jenkins 1 494, I was able to send a file to a job parameter on Ubuntu Linux 12 10 using curl with --form parameters. On the Jenkins server, I configured a job that accepts a single parameter a file upload parameter named myfileparam. The first line of that curl call constructs a web form with a parameter named myfileparam same as in the job its value will be the contents of a file on the local file system named The symbol prefix tells curl to send a local file instead of the given filename. The second line defines a JSON request that matches the form parameters on line one a file parameter named myfileparam. The third line activates the form s Build button The forth line is the job URL with the build suffix. If this call is successful, curl returns 0 If it is unsuccessful, the error or exception from the service is printed to the console This answer takes a lot from an old blog post relating to Hudson which I deconstructed and re-worked for my own needs. answered Mar 12 13 at 21 58.Here s how you can POST XML on Windows using curl command line on Windows Better use file for that. answered Nov 20 13 at 16 16.If you have multiple headers then you might want to use the following. answered Jul 23 15 at 5 17.If you are using curl on Windows. answered Aug 8 14 at 13 07.Your Answer.2017 Stack Exchange, Inc.
No comments:
Post a Comment