Ein wichtiges Tool für den alltäglichen Gebrauch eines Programmierers ist die freie Programmbibliothek cURL (Curl URL Request Library). Das Kommandozeilenprogramm dient im Grunde zur Übertragung von Dateien in Rechnernetzen. cURL kann Dateien im Gegensatz zu dem älteren wget nicht nur herunter- sondern auch hochladen. Typischer und einfachster Anwendungsfall für den Einsatz von cURL ist der Dateidownload. Wir können damit aber noch eine Menge anderer Dinge machen.

Schauen wir uns cURL mal ein bisschen an:

Protokolle

cURL überstützt von Haus aus folgende Protokolle:

Für uns am wichtigsten sind natürlich die im Web am häufigsten verwendeten Protokolle HTTP, HTTPS, FTP und FTPS.

Beispiele

Ich habe hier ein paar mehr oder weniger selbsterklärende Beispiele zusammengestellt. Detaillierte Informationen sind natürlich auf der man-Page von cURL zu finden.

einfache http-Anfrage ohne Optionen
curl http://www.example.com
cURL mit der Option -s in den Silent-Mode schalten. Er erfolgt keine Ausgabe auf der CLI.
curl -s https://www.example.com
Portangabe beim Aufruf an die Domain anhängen
curl http://www.example.com:85/
HTTP-Response Header mit der Option –include an den Output hinzufügen
curl --include http://www.example.com:85/
Verbosemodus –verbose
curl --verbose https://www.example.com:5000/
Onlinewörterbuch DICT.org abfragen (via DICT-Protokoll)
curl dict://dict.org/d:sun
cURL mit der Option -k erlauben, über unsichere SSL-Verbindung zu kommunizieren
curl -k https://spielprinzip.com
Output mit der Option -o in eine Datei speichern
curl -o saveHere.html https://spielprinzip.com/blog
–create-dirs anhängen, um gleich noch die lokale Dateistruktur zur erstellen. YEEK!
curl -o path/to/dir/saveHere.html --create-dirs https://spielprinzip.com/blog
Datei über FTP abholen
curl ftp://user:pass@spielprinzip.com:21/coolfile.txt
entfertes Verzeichnis eines FTP-Servers listen
curl -l -u username ftp://example.com:21
eine Datei auf einen FTP-Server hochladen
curl -T /path/to/a/file.jpg -u username ftp://spielprinzip.com:21
HTTP HEADER setzen
curl --header "Connection:keep-alive" "--header "User-Agent: Warrior 01" http://example.com
eigene HTTP HEADER mit –header setzen
curl --header "Secret:15412415" --header "Connection:keep-alive" http://example.com
HTTP GET
curl https://example.com?p=3&ut=helo
HTTP POST
curl --data "p=4&ut=helo" http://www.example.com/rest/
curl --data "Information" http://www.example.com/someDir/
HTACCESS überwinden
curl --user "andreas:mynewpassword2342" https://example.com/secure
HTTP Referer mit der Option -referer fälschen
curl --referer http://fake.com https://www.example.com
Im Falle eines Server-Redirects dem Redirect folgen (z.b. 301)
curl --location http://www.example.com
Cookies mit der Option –cookie senden
curl --cookie "name=Jack" http://www.example.com

Für detailliertere Informationen: hier geht’s zur Manpage von cURL!

0 Kommentare

Dein Kommentar

An Diskussion beteiligen?
Hinterlasse uns Deinen Kommentar!

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.