1 curl (client url)
1.1 Die Philosophie: Protokoll-Allrounder ohne Ballast
Im Gegensatz zu wget, das darauf spezialisiert ist, ganze Webseiten rekursiv spiegelartig herunterzuladen, ist curl ein Werkzeug, das Datenströme im Terminal flexibel manipuliert. Es schickt Anfragen ab und gibt die Antwort standardmäßig direkt im Terminal (auf dem Standard-Ausgabekanal) aus – es sei denn, man sagt ihm explizit, dass es eine Datei speichern soll.
1.2 Die wichtigsten Parameter im Alltag:
- -O (Großes O - Remote Name):
Lädt die Datei herunter und speichert sie unter exakt dem Namen, den sie auch auf dem Server hat. (Sehr häufig im Forum genutzt). - -o (Kleines o - Output):
Lädt die Datei herunter, erlaubt es dir aber, einen neuen, eigenen Dateinamen für die Speicherung zu definieren. - -I (Großes i - Head):
Lädt nicht die Datei oder die Webseite herunter, sondern fordert ausschließlich den HTTP-Header an. Perfekt, um Server-Antworten, Weiterleitungen (Redirects) oder SSL-Zertifikate zu prüfen. - -L (Großes L - Location):
Folgt automatischen Weiterleitungen. Wenn eine URL von http auf https umleitet, bricht curl standardmäßig ab. Mit -L läuft es der Weiterleitung hinterher. - -s (Silent):
Schaltet den Fortschrittsbalken und Fehlermeldungen ab. Ideal, wenn man curl in eigenen Bash-Skripten im Hintergrund laufen lassen möchte.
1.3 Praktische Beispiele:
Ein Skript oder eine Datei einfach herunterladen (unter Originalnamen):
-
1.4 Eine Datei herunterladen und umbenennen:
Nur den HTTP-Statuscode einer Webseite prüfen (ob der Server online ist):
1.5 💡 Der "Aha!"-Effekt: Die eigene öffentliche IP ermitteln
Ein extrem beliebter Trick, wenn ein Nutzer wissen möchte, unter welcher IP-Adresse sein Linux-PC gerade im Internet unterwegs ist (z.B. um VPNs oder Portfreigaben zu prüfen).
QuoteDer Einzeiler für die IP-Abfrage:
Statt eine überladene Werbe-Webseite im Browser aufzurufen, schickt man einfach eine kurze, lautlose Anfrage an einen reinen Text-Dienst:Das Ergebnis: Das Terminal gibt kurz und knackig exakt deine öffentliche IPv4- oder IPv6-Adresse aus. Keine Werbung, kein Schnickschnack.
⚠️ Der IPv4-Zwang im modernen Netz:
Wenn das eigene System über einen modernen IPv6-Anschluss verfügt, liefert curl -s https://ifconfig.me die lange IPv6-Adresse zurück. Möchte man jedoch die klassische IPv4-Adresse (z. B. 80.120....) ermitteln, erweitert man den Befehl um den Parameter -4: