curl 是一个利用 URL 语法在命令行方式下工作的文件传输工具,它支持文件上传和下载,所以是综合传输工具,但按传统,习惯称 url 为下载工具,作为一款强力工具,curl 支持包括 HTTP、HTTPS、ftp、gopher、DICT、FILE、LDAP、LDAPS 等协议,还支持诸如 SSL 证书、HTTP POST、HTTP PUT、FTP 上传、基于 Kerberos 的 GSS 认证、文件传输恢复、代理、Cookies、用户名+密码认证、下载部分文件、静默模式、进度条显示等功能。
基本用法
1、下载文件
curl -O http://example.com/file.txt
-O
:保存文件到当前目录并使用远程文件名。
2、显示网页内容
curl http://example.com
3、保存网页内容到文件
curl -o output.html http://example.com
4、指定 User-Agent
curl -A "MyUserAgent" http://example.com
5、添加自定义头部信息
curl -H "X-Custom-Header: value" http://example.com
6、上传文件
curl -T localfile.txt ftp://username:password@ftp.server.com/remotepath/
7、使用代理
curl -x http://proxy.example.com:8080 http://example.com
8、跟随重定向
curl -L http://example.com
9、显示请求和响应头
curl -i http://example.com
10、显示详细调试信息
curl -v http://example.com
11、限制下载速度
curl --limit-rate 100K http://example.com/largefile.zip -o largefile.zip
12、指定范围下载
curl -r 0-999 http://example.com/largefile.zip -o part1.zip
13、使用 Kerberos 认证
curl --negotiate -u : http://kerberos.example.com
14、处理 Cookies
curl -c cookies.txt -b cookies.txt http://example.com
15、使用 Basic 认证
curl -u username:password http://example.com
表格示例
选项 | 描述 |
-O | 保存文件到当前目录并使用远程文件名 |
-o | 保存网页内容到指定文件 |
-A | 指定 User-Agent |
-H | 添加自定义头部信息 |
-T | 上传文件 |
-x | 使用代理 |
-L | 跟随重定向 |
-i | 显示请求和响应头 |
-v | 显示详细调试信息 |
--limit-rate | 限制下载速度 |
-r | 指定范围下载 |
--negotiate | 使用 Kerberos 认证 |
-c /-b | 处理 Cookies |
-u | 使用 Basic 认证或提供用户名和密码 |
相关问答FAQs
问题1:如何使用 curl 命令下载一个文件并保存为特定名称?
答:可以使用-o
选项来指定保存的文件名。
curl -o newname.txt http://example.com/file.txt
这样会将http://example.com/file.txt
下载并保存为newname.txt
。
问题2:如何查看 curl 命令的详细调试信息?
答:可以使用-v
选项来查看详细调试信息。
curl -v http://example.com
这样会显示详细的请求和响应过程,有助于调试和了解 curl 的工作原理。
小编有话说
curl 是一个非常强大且灵活的命令行工具,适用于各种网络请求和数据传输任务,通过掌握其基本用法和常用选项,可以大大提高工作效率和网络操作的灵活性,希望本文能帮助你更好地理解和使用 curl 命令,解决日常网络操作中的各种需求,如果你有任何疑问或需要进一步的帮助,请随时提问!