当想要直接经过linux 命令行下载文件,立刻就能想到两个工具:wget 和 CURL。它们有不少同样的特征,能够很轻易的完成一些相同的任务,虽然它们有一些类似的特征,但它们并非彻底同样。这两个程序适用与不一样的场合,在特定场合下,都拥有各自的特性。
wget 和 CURL 均可如下载内容。它们的核心就是这么设计的。它们均可以向互联网发送请求并返回请求项。这能够是文件、图片或者是其余诸如网站的原始 HTML 之类。
这两个程序均可以进行 HTTP POST 请求。这意味着它们均可以向网站发送数据,好比说填充表单什么的。
因为这二者都是命令行工具,它们都被设计成可脚本化。wget 和 CURL 均可以写进你的 Bash 脚本 ,自动与新内容交互,下载所需内容。
wget 简单直接。这意味着你能享受它超凡的下载速度。wget 是一个独立的程序,无需额外的资源库,更不会作其范畴以外的事情。
wget 是专业的直接下载程序,支持递归下载。同时,它也容许你下载网页中或是 FTP 目录中的任何内容。
wget 拥有智能的默认设置。它规定了不少在常规浏览器里的事物处理方式,好比 cookies 和重定向,这都不须要额外的配置。能够说,wget 简直就是无需说明,开罐即食!
CURL是一个多功能工具。固然,它能够下载网络内容,但同时它也能作更多别的事情。
CURL 技术支持库是:libCURL。这就意味着你能够基于 CURL 编写整个程序,容许你基于 libCURL 库中编写图形环境的下载程序,访问它全部的功能。
CURL 宽泛的网络协议支持多是其最大的卖点。CURL 支持访问 HTTP 和 HTTPS 协议,可以处理 FTP 传输。它支持 LDAP 协议,甚至支持 Samba 分享。实际上,你还能够用 CURL 收发邮件。
CURL 也有一些简洁的安全特性。CURL 支持安装许多 SSL/TLS 库,也支持经过网络代理访问,包括 SOCKS。这意味着,你能够越过 Tor 来使用CURL。
CURL 一样支持让数据发送变得更容易的 gzip 压缩技术。
那你应该使用 CURL 仍是使用 wget?这个比较得看实际用途。若是你想快速下载而且没有担忧参数标识的需求,那你应该使用轻便有效的 wget。若是你想作一些更复杂的使用,直觉告诉你,你应该选择 cRUL。
CURL 支持你作不少事情。你能够把 CURL 想象成一个精简的命令行网页浏览器。它支持几乎你能想到的全部协议,能够交互访问几乎全部在线内容。惟一和浏览器不一样的是,CURL 不会渲染接收到的相应信息。