在Linux系统中,从远程下载文件通常可以使用wget
或curl
这两个命令行工具。
一、wget
- 基础概念
wget
是一个用于从网络上下载文件的自由工具,它支持HTTP、HTTPS和FTP协议等多种协议。
- 优势
- 简单易用,语法简洁。例如,要下载一个文件
example.zip
,其URL为http://example.com/example.zip
,只需要在终端中输入wget http://example.com/example.zip
即可开始下载。 - 支持断点续传。如果下载过程中网络中断,再次运行相同的
wget
命令时,它会从上次中断的地方继续下载,而不是重新开始。 - 可以递归下载整个网站(如果需要的话),通过合适的参数设置。
- 应用场景
- 下载软件包。许多Linux发行版的软件仓库中的软件可以通过
wget
直接下载安装包进行本地安装。 - 下载网页上的静态资源,如图片、文档等。
- 示例代码
- 基本下载:
- 基本下载:
- 指定下载文件的保存名称:
- 指定下载文件的保存名称:
- 后台下载(不阻塞当前终端):
- 后台下载(不阻塞当前终端):
二、curl
- 基础概念
curl
是一个功能强大的命令行工具,用于在命令行下传输数据,支持多种协议,包括HTTP、HTTPS、FTP等。
- 优势
- 更加灵活,不仅可以下载文件,还可以用于发送HTTP请求(如GET、POST等),并且可以对请求进行详细的定制。
- 支持多种认证方式,在需要身份验证才能访问资源的情况下非常有用。
- 应用场景
- 与Web服务进行交互,例如测试API接口时下载返回的数据。
- 下载文件的同时可以进行一些额外的操作,如设置请求头信息。
- 示例代码
- 基本下载:
- 基本下载:
- 下载并保存为指定名称:
- 下载并保存为指定名称:
- 如果要模拟浏览器发送请求下载文件(设置User - Agent头):
- 如果要模拟浏览器发送请求下载文件(设置User - Agent头):