使用 curl 命令下载文件有两种方式:
- 下载并保存到本地文件
使用 -o
参数可以将下载的文件保存到本地,例如:
curl -o filename.tar.gz http://example.com/file.tar.gz
其中 -o
参数后指定要保存的文件名,http://example.com/file.tar.gz
是文件的下载地址。
- 直接输出到控制台
如果不需要将文件保存到本地,可以直接在控制台输出,例如:
curl http://example.com/file.tar.gz
这会将文件的内容直接输出到终端,可以使用 >
等符号将其导出到文件中。
注意,在下载文件时建议验证文件的完整性和真实性,以防止下载到恶意软件或损坏的文件。
curl -O
是一个常用的 curl 命令,它用于将远程文件下载到当前工作目录,并使用该文件的原始名称保存到本地。其中 -O
参数是大写字母 O,表示从 URL 中提取文件名并使用该文件名保存到本地。
例如,执行以下命令:
curl -O http://example.com/file.tar.gz
这会将 http://example.com/file.tar.gz
下载到当前工作目录,并将其保存为 file.tar.gz
。
需要注意的是,如果本地已经存在同名文件,curl -O
将不会覆盖该文件,而是会在文件名后面添加数字以区分不同版本的文件。如果要强制覆盖本地文件,可以使用 -f
参数,例如:curl -f -O http://example.com/file.tar.gz
。
除了常用的 -o
和 -O
参数,curl 还有很多其他有用的参数,下面列举几个常用的参数:
-L
或--location
: 如果请求返回的状态码为 3xx,则自动跟随重定向,并尝试下载重定向后的资源。-I
或--head
: 仅发送 HEAD 请求,获取响应头信息,不包含响应体。-s
或--silent
: 静默模式,不显示进度和错误信息。-v
或--verbose
: 详细模式,显示更多的调试信息,包括请求和响应的头部信息。-u
或--user
: 指定用户名和密码,用于 HTTP 基本认证。例如:curl -u username:password http://example.com
。-H
或--header
: 指定请求头信息,可以使用多个-H
参数,例如:curl -H "Accept: application/json" -H "Content-Type: application/json" http://example.com
。-X
或--request
: 指定 HTTP 请求方法,默认使用 GET 方法,可以使用-X POST
等参数来指定其他请求方法。-d
或--data
: 发送 POST 请求时,指定请求体数据。例如:curl -d "username=admin&password=123456" http://example.com/login
。
以上只是 curl 常用参数中的一些,如果需要查看所有参数及其说明,可以使用 curl --help
命令查看或访问官方文档。