Ich bin gespannt auf den Unterschied zwischen curlund wget. Beide werden verwendet, um Dateien und Dokumente zu erhalten, aber was ist der Hauptunterschied zwischen ihnen.
Der Hauptunterschied besteht darin, dass wget zum Herunterladen von Dingen verwendet wird, während curl zum Testen der Kommunikation mithilfe eines bestimmten Protokolls verwendet wird.
wgetwird unter einer freien Software-Copyleft-Lizenz (die GNU GPL) veröffentlicht. curlwird unter einer Lizenz für freie Software veröffentlicht (ein MIT-Derivat).
curlBietet Upload- und Sendefunktionen. wgetBietet nur einfache HTTP-POST-Unterstützung.
Danke, genau darüber habe ich mich ein paar Stunden lang gewundert. Ich habe wget verwendet, um eine rekursive Spinne auf einer Site zu erstellen, und scheint auf einer Seite mit elf Milliarden Links stehen geblieben zu sein. In Wirklichkeit läuft es mit 100% CPU auf einem Kern. Ich hatte gehofft, dass es etwas Besseres gibt, das das neue Multicore-Ding kann, von dem ich gehört habe.
Brian Topping
1
Eines der Dinge wget, die in dieser Antwort nicht erwähnt werden, ist die http-Spiegelung (oder "Spidering" -Fähigkeit). curlist sehr gut darin, was es tut, aber es allein ist nicht dazu gedacht, eine Website zu spiegeln.
Jsbillings
Was ist mit wput als Alias, der ftp unterstützt?
McKenzm
1
Diese Ausdrücke haben keinen Sinn: "und alle Urheberrechte sind an die FSF übertragen", "ist völlig eigenständig und unabhängig, ohne dass eine Organisation Eltern hat". Es ist offensichtlich, dass der Autor von cURL der Inhaber des Urheberrechts ist. Es ist offensichtlich, dass der Autor von wget der Inhaber des Copyrights ist. Aber beide sind frei wie in Freiheitssoftware. Sie können stattdessen sagen, dass wget unter einer Copyleft-Lizenz und cURL unter einer zulässigen Lizenz steht.
Valerio Bozz
1
@ValerioBozz: Eigentlich nein. Sowohl curl als auch wget sind Community-Projekte. Mit curl besitzt jede Person das Urheberrecht an dem Code, den sie beisteuert. Wie bei den meisten anderen GNU-Programmen geben auch bei Wget die verschiedenen Autoren ihre Urheberrechte an die FSF ab. Das heißt, sie besitzen diesen Code nicht mehr. Auf diese Weise kann die FSF Copyleft strikt durchsetzen und den Code bei Bedarf neu lizenzieren.
27.
57
In wenigen Worten:
wget ist ein Tool zum Herunterladen von Dateien von Servern
curl ist ein Tool, mit dem Sie Anfragen / Antworten mit einem Server austauschen können
wget
Mit Wget können Sie nur Dateien von einem HTTP/ HTTPSoder FTPServer herunterladen . Sie geben ihm einen Link und es lädt automatisch die Datei herunter, auf die der Link verweist. Es erstellt die Anforderung automatisch.
locken
Curl im Gegensatz zu Wget können Sie die Anfrage erstellen, wie Sie möchten . Dies gibt dem Benutzer viel Freiheit und macht ein erstaunliches Debugging-Tool. Hinzu kommt der andere entscheidende Unterschied: die Vielzahl der unterstützten Protokolle. Curl Stützen FTP, FTPS, Gopher, HTTP, HTTPS, SCP, SFTP, TFTP, Telnet, DICT, LDAP, LDAPS, IMAP, POP3, SMTP, RTSPund URI. Kombinieren Sie diese beiden Schlüsselpunkte und Sie haben ein fantastisches Tool zum Testen von Protokollen, zum Testen der Serverkonfiguration usw.
Wie viele sagen, können Sie eine Datei mit Locken herunterladen. Dies ist jedoch nur nützlich, wenn Sie eine Datei von einem Server herunterladen möchten, der ein Protokoll verwendet, das von wget nicht unterstützt wird.
Tatsächlich wgetfolgt auch die Weiterleitung, dann speichert die Antwort anders als curl. Beide können das Gegenteil zum Standardverhalten erreichen wget -qO - http://google.co.uk/ odercurl http://google.co.uk/ > index.html
Matt
1
@mtm verwendet curl http://google.co.uk/ > index.htmljedoch keine eingebaute Funktionalität. Der Hauptunterschied ist jedoch der Zweck, für den jedes Werkzeug hergestellt wurde. Es ist nicht zu leugnen, dass sich Werkzeuge weiterentwickeln und oft von ihrer ursprünglichen Flugbahn abweichen.
Pithikos
1
@mtm curl http://google.co.uk -o index.htmlwürde die Interna von curl anstelle der Shell-Ausgabeumleitung mit verwenden >.
Petrus Repo
19
Tatsächlich besteht der Hauptunterschied darin, dass curleine Bibliothek ( libcurl) enthalten ist und diese Bibliothek von anderen Anwendungen häufig verwendet wird. wgetist eigenständig.
curl
Autor: daniel.haxx.se/docs/curl-vs-wget.htmlAntworten:
Die Hauptunterschiede sind:
wget
Die größte Stärke im Vergleich zucurl
ist die Fähigkeit zum rekursiven Herunterladen.wget
ist nur Befehlszeile. Es gibt keine lib oder so, abercurl
die Funktionen werden von libcurl unterstützt.curl
unterstütztFTP
,FTPS
,HTTP
,HTTPS
,SCP
,SFTP
,TFTP
,TELNET
,DICT
,LDAP
,LDAPS
,FILE
,POP3
,IMAP
,SMTP
,RTMP
undRTSP
.wget
unterstütztHTTP
,HTTPS
undFTP
.curl
baut und läuft auf mehr Plattformen alswget
.wget
wird unter einer freien Software-Copyleft-Lizenz (die GNU GPL) veröffentlicht.curl
wird unter einer Lizenz für freie Software veröffentlicht (ein MIT-Derivat).curl
Bietet Upload- und Sendefunktionen.wget
Bietet nur einfache HTTP-POST-Unterstützung.Weitere Details finden Sie unter folgendem Link:
Locken gegen Wget
quelle
wget
, die in dieser Antwort nicht erwähnt werden, ist die http-Spiegelung (oder "Spidering" -Fähigkeit).curl
ist sehr gut darin, was es tut, aber es allein ist nicht dazu gedacht, eine Website zu spiegeln.In wenigen Worten:
wget
ist ein Tool zum Herunterladen von Dateien von Serverncurl
ist ein Tool, mit dem Sie Anfragen / Antworten mit einem Server austauschen könnenwget
Mit Wget können Sie nur Dateien von einem
HTTP
/HTTPS
oderFTP
Server herunterladen . Sie geben ihm einen Link und es lädt automatisch die Datei herunter, auf die der Link verweist. Es erstellt die Anforderung automatisch.locken
Curl im Gegensatz zu Wget können Sie die Anfrage erstellen, wie Sie möchten . Dies gibt dem Benutzer viel Freiheit und macht ein erstaunliches Debugging-Tool. Hinzu kommt der andere entscheidende Unterschied: die Vielzahl der unterstützten Protokolle. Curl Stützen
FTP
,FTPS
,Gopher
,HTTP
,HTTPS
,SCP
,SFTP
,TFTP
,Telnet
,DICT
,LDAP
,LDAPS
,IMAP
,POP3
,SMTP
,RTSP
undURI
. Kombinieren Sie diese beiden Schlüsselpunkte und Sie haben ein fantastisches Tool zum Testen von Protokollen, zum Testen der Serverkonfiguration usw.Wie viele sagen, können Sie eine Datei mit Locken herunterladen. Dies ist jedoch nur nützlich, wenn Sie eine Datei von einem Server herunterladen möchten, der ein Protokoll verwendet, das von wget nicht unterstützt wird.
quelle
wget
folgt auch die Weiterleitung, dann speichert die Antwort anders alscurl
. Beide können das Gegenteil zum Standardverhalten erreichenwget -qO - http://google.co.uk/
odercurl http://google.co.uk/ > index.html
curl http://google.co.uk/ > index.html
jedoch keine eingebaute Funktionalität. Der Hauptunterschied ist jedoch der Zweck, für den jedes Werkzeug hergestellt wurde. Es ist nicht zu leugnen, dass sich Werkzeuge weiterentwickeln und oft von ihrer ursprünglichen Flugbahn abweichen.curl http://google.co.uk -o index.html
würde die Interna von curl anstelle der Shell-Ausgabeumleitung mit verwenden>
.Tatsächlich besteht der Hauptunterschied darin, dass
curl
eine Bibliothek (libcurl
) enthalten ist und diese Bibliothek von anderen Anwendungen häufig verwendet wird.wget
ist eigenständig.quelle