Linux下载工具wget与curl

简介: `wget` 是一个用于从网络下载文件的命令行工具,支持HTTP、HTTPS和FTP协议。它能自动处理下载中断,并支持递归下载网站内容。基本用法:`wget URL`,可指定文件名(`-O`)、保存目录(`-P`),还支持断点续传(`-c`)、限速(`--limit-rate`)和递归下载(`-r`)。相比之下,`curl` 更侧重于发送各种HTTP请求(如GET、POST),并支持文件上传、自定义请求头和cookie等功能。

wget

wget是一个专门用于从网络上下载文件的命令行工具。它支持HTTP、HTTPS和FTP等多种协议,能够自动处理下载中断,并且支持递归下载整个网站的内容。

基本下载

wget最基本的用法就是直接输入文件的URL地址,它就会开始下载文件。例如:

wget https://example.com/file.zip

这条命令会让wget从https://example.com/网站上下载名为file.zip的文件。

指定文件名和目录

下载时,如果你想给文件换个名字或者保存到特定的目录,可以告诉wget你想用的新名字或者目录。例如:

wget -O newname.zip https://example.com/file.zip  # 更改文件名
wget -P /path/to/directory https://example.com/file.zip  # 指定下载目录

断点续传

如果下载过程中因为某些原因中断了,wget可以帮你从中断的地方继续下载,而不是重新开始。这叫做“断点续传”。你只需要再次运行相同的命令,加上-c选项。例如:

wget -c https://example.com/largefile.zip

限速下载

在网络环境不佳或需要节约带宽的情况下,你可以使用--limit-rate选项来限制wget的下载速度。例如:

wget --limit-rate=100k https://example.com/largefile.zip

这里的100k表示限制下载速度为100KB/s。

递归下载

wget还可以递归下载一个网站的所有内容,并保留站点的目录结构。这对于备份网站或下载静态资源非常有用。使用-r选项即可开启递归下载模式。例如:

wget -r https://example.com/

这条命令会让wget下载https://example.com/网站上的所有内容。

curl

curl是一个功能强大的命令行工具,它不仅可以用于下载文件,还可以发送各种类型的HTTP请求(如GET、POST、PUT、DELETE等),支持表单提交、文件上传以及处理复杂的认证和cookie等。

基本下载

和wget一样,curl也可以用于下载文件。使用-o选项可以指定下载后的文件名。例如:

curl -o file.zip https://example.com/file.zip

这条命令会让curl从https://example.com/网站上下载名为file.zip的文件,并将其保存为file.zip

发送HTTP请求

curl最强大的功能之一是它可以发送各种类型的HTTP请求。默认情况下,curl发送的是GET请求。例如:

curl https://example.com/api

这条命令会向https://example.com/api发送一个GET请求,并返回服务器响应的内容。

如果你想发送POST请求,可以使用-X POST选项,并通过-d选项添加请求体。例如:

curl -X POST -d "param1=value1&param2=value2" https://example.com/api

这条命令会向https://example.com/api发送一个POST请求,并传递param1=value1&param2=value2作为请求体。

添加请求头和cookie

在使用curl发送HTTP请求时,你可能需要添加自定义的请求头或cookie。使用-H选项可以添加请求头,使用-b--cookie选项可以添加cookie。例如:

curl -H "User-Agent: Mozilla/5.0" https://example.com/api  # 添加请求头
curl --cookie "name=value" https://example.com/api  # 添加cookie

处理文件上传

curl还支持文件上传功能。使用-F选项可以指定要上传的文件。例如:

curl -F "file=@/path/to/file.zip" https://example.com/upload

这条命令会向https://example.com/upload上传一个名为file.zip的文件。

显示响应头信息

如果你想查看服务器返回的响应头信息,可以使用-I选项。这个选项会让curl只发送HTTP HEAD请求,并返回响应头信息而不获取响应体。例如:

curl -I https://example.com/api

断点续传下载文件

虽然curl主要用于发送HTTP请求,但它也支持断点续传下载文件。使用-C -选项可以在中断的地方继续下载。不过需要注意的是,这个功能在某些情况下可能不如wget稳定。例如:

curl -C - -O https://example.com/largefile.zip

这条命令会让curl从中断的地方继续下载largefile.zip文件。

目录
打赏
0
9
10
0
198
分享
相关文章
DBeaver Ultimate Edtion 25.0 Multilingual (macOS, Linux, Windows) - 通用数据库工具
DBeaver Ultimate Edtion 25.0 Multilingual (macOS, Linux, Windows) - 通用数据库工具
45 12
DBeaver Ultimate Edtion 25.0 Multilingual (macOS, Linux, Windows) - 通用数据库工具
Termux安卓终端美化与开发实战:从下载到插件优化,小白也能玩转Linux
Termux是一款安卓平台上的开源终端模拟器,支持apt包管理、SSH连接及Python/Node.js/C++开发环境搭建,被誉为“手机上的Linux系统”。其特点包括零ROOT权限、跨平台开发和强大扩展性。本文详细介绍其安装准备、基础与高级环境配置、必备插件推荐、常见问题解决方法以及延伸学习资源,帮助用户充分利用Termux进行开发与学习。适用于Android 7+设备,原创内容转载请注明来源。
71 19
|
2天前
|
Linux下如何使用Curl进行网络请求
希望这篇文章能帮助您在Linux下更好地使用Curl进行网络请求。如有疑问,请随时提问!
30 10
|
27天前
|
Linux中yum、rpm、apt-get、wget的区别,yum、rpm、apt-get常用命令,CentOS、Ubuntu中安装wget
通过本文,我们详细了解了 `yum`、`rpm`、`apt-get`和 `wget`的区别、常用命令以及在CentOS和Ubuntu中安装 `wget`的方法。`yum`和 `apt-get`是高层次的包管理器,分别用于RPM系和Debian系发行版,能够自动解决依赖问题;而 `rpm`是低层次的包管理工具,适合处理单个包;`wget`则是一个功能强大的下载工具,适用于各种下载任务。在实际使用中,根据系统类型和任务需求选择合适的工具,可以大大提高工作效率和系统管理的便利性。
137 25
Linux下搭建本地deepseek(附文档下载)
本文介绍了在Linux上搭建本地DeepSeek的步骤。主要涉及安装ollama、下载deepseek模型(1.5b参数版本)和配置ChatboxAI客户端。通过命令行安装ollama后,使用`ollama run deepseek-r1:1.5b`下载模型,并配置环境变量以确保服务正常运行。最后,通过ChatboxAI与模型进行交互。整个过程适合初学者,服务器配置为4核CPU和8GB内存,无GPU,响应速度稍有延迟但可接受。相关资源链接已提供。
106 2
Linux软件包管理工具概览
在Linux系统中,dpkg、apt、rpm、yum和dnf是几种常见的包管理工具,它们分别属于不同的Linux发行版或家族,并有着各自的诞生顺序和特点。下面将按照这些工具的诞生顺序,并结合Debian、Red Hat、CentOS、Ubuntu和Kali等系统,进行详细的介绍。
39 4
|
10天前
|
Linux 常用文件查看命令
`cat` 命令用于连接文件并打印到标准输出,适用于快速查看和合并文本文件内容。常用示例包括:`cat file1.txt` 查看单个文件,`cat file1.txt file2.txt` 合并多个文件,`cat > filename` 创建新文件,`cat >> filename` 追加内容。`more` 和 `less` 命令用于分页查看文件,`tail` 命令则用于查看文件末尾内容,支持实时追踪日志更新,如 `tail -f file.log`。
34 5
Linux 常用文件查看命令
Linux 超级强大的十六进制 dump 工具:XXD 命令,我教你应该如何使用!
在 Linux 系统中,xxd 命令是一个强大的十六进制 dump 工具,可以将文件或数据以十六进制和 ASCII 字符形式显示,帮助用户深入了解和分析数据。本文详细介绍了 xxd 命令的基本用法、高级功能及实际应用案例,包括查看文件内容、指定输出格式、写入文件、数据比较、数据提取、数据转换和数据加密解密等。通过掌握这些技巧,用户可以更高效地处理各种数据问题。
470 8
|
1月前
|
Linux系统之whereis命令的基本使用
Linux系统之whereis命令的基本使用
83 24
Linux系统之whereis命令的基本使用
|
16天前
|
Linux od命令
本文详细介绍了Linux中的 `od`命令,包括其基本语法、常用选项和示例。通过这些内容,你可以灵活地使用 `od`命令查看文件内容,提高分析和调试效率。确保理解每一个选项和示例的实现细节,应用到实际工作中时能有效地处理各种文件查看需求。
47 19