Je souhaite connaître la différence entre curl
et wget
. Les deux sont utilisés pour obtenir des fichiers et des documents, mais quelle est la principale différence entre eux.
Pourquoi y a-t-il deux programmes différents?
Les principales différences sont:
wget
par rapport à curl
est sa capacité à télécharger de manière récursive.wget
est uniquement en ligne de commande. Il n'y a ni lib ni rien, mais les fonctionnalités de curl
sont alimentées par libcurl.curl
prend en charge FTP
, FTPS
, HTTP
, HTTPS
, SCP
, SFTP
, TFTP
, TELNET
, DICT
, LDAP
, LDAPS
, FILE
, POP3
, IMAP
, SMTP
, RTMP
et RTSP
. wget
prend en charge HTTP
, HTTPS
et FTP
.curl
se construit et s'exécute sur plus de plateformes que wget
.wget
est publié sous une licence de copyleft de logiciel libre (la GPL GNU). curl
est publié sous une licence permissive de logiciel libre (a MIT dérivé).curl
offre des capacités de téléchargement et d'envoi. wget
ne propose que du HTTP simple POST support.Vous pouvez voir plus de détails sur le lien suivant:
En quelques mots:
wget
est un outil pour télécharger des fichiers depuis des serveurscurl
est un outil qui vous permet d'échanger des demandes/réponses avec un serveurwget
Wget vous permet uniquement de télécharger des fichiers à partir d'un serveur HTTP
/HTTPS
ou FTP
. Vous lui donnez un lien et il télécharge automatiquement le fichier vers lequel le lien pointe. Il construit automatiquement la demande.
curl
Curl contrairement à wget vous permet construire la requête comme vous le souhaitez. Cela donne beaucoup de liberté à l'utilisateur et fait un outil de débogage incroyable. Ajoutez à cela l'autre différence clé entre les deux: la pléthore de protocoles pris en charge. Curl prend en charge FTP
, FTPS
, Gopher
, HTTP
, HTTPS
, SCP
, SFTP
, TFTP
, Telnet
, DICT
, LDAP
, LDAPS
, IMAP
, POP3
, SMTP
, RTSP
et URI
. Combinez ces deux points clés et vous disposez d'un outil incroyable pour tester les protocoles, tester la configuration du serveur, etc.
Comme beaucoup le disent, vous pouvez télécharger un fichier avec curl. Cependant, cela n'est utile que si vous souhaitez télécharger un fichier à partir d'un serveur qui utilise un protocole que wget ne prend pas en charge.
En fait, la principale différence est que curl
comprend une bibliothèque (libcurl
) et que la bibliothèque est largement utilisée par d'autres applications. wget
est autonome.
J'ai fait des tests de performances avec wget et curl, et le résultat est:
Durée d'exécution moyenne testée 100 fois lors du téléchargement 1 Mo fichier:
wget: 0.844s
cURL: 0.680s
Durée d'exécution moyenne testée 100 fois lors du téléchargement 5 Mo fichier:
wget: 1.075s
cURL: 0.863s
Durée d'exécution moyenne testée 100 fois pendant le téléchargement 10 Mo fichier:
wget: 1.182s
cURL: 1.074s
Taille de la commande sur le système:
wget: 371K
cURL: 182K