在 Linux 中 curl 是一个利用 URL 规则在命令行下工作的文件传输工具,可以说是一款很强大的 http 命令行工具。它支持文件的上传和下载,是综合传输工具,但按传统,习惯称 url 为下载工具。
作为一款强力工具,curl 支持包括 HTTP、HTTPS、FTP 等众多协议,还支持 GET、POST、cookies、认证、从指定偏移处下载部分文件、用户代理字符串、限速、文件大小、进度条等特征,还可以做网页处理流程和数据检索自动化。
在进行 web 后台程序开发测试过程中,常常会需要发送 url 进行测试,使用 curl 可以方便地模拟出符合需求的 url 命令。
curl [option] [url]
参数 | 描述 |
---|---|
option | curl 命令使用的选项。 |
url | 请求的 URL。 |
使用 curl 命令,加上参数 option 给指定的 url 发送请求。
参数 | 描述 |
---|---|
-A/–user-agent |
设置用户代理发送给服务器。 |
-b/–cookie <name=string/file> | cookie 字符串或文件读取位置。 |
-c/–cookie-jar |
操作结束后把 cookie 写入到这个文件中 |
-C/–continue-at |
断点续转 |
-D/–dump-header |
把 header 信息写入到该文件中 |
-e/–referer | 来源网址 |
-f/–fail | 连接失败时不显示 http 错误 |
-o/–output | 把输出写到该文件中 |
-O/–remote-name | 把输出写到该文件中,保留远程文件的文件名 |
-r/–range |
检索来自 HTTP/1.1 或 FTP 服务器字节范围 |
-s/–silent | 静音模式。不输出任何东西 |
-T/–upload-file |
上传文件 |
-u/–user <user[:password]> | 设置服务器的用户和密码 |
-w/–write-out [format] | 什么输出完成后 |
-x/–proxy <host[:port]> | 在给定的端口上使用HTTP代理 |
-#/–progress-bar | 进度条显示当前的传送状态 |
使用 curl 命令,请求一个网页的内容,具体命令如下:
curl www.haicoder.net
此时,终端如下:
我们按下回车,此时,终端输出如下:
我们看到,我们使用了 curl 命令,输出了网页内容。
在 Linux 中 curl 是一个利用 URL 规则在命令行下工作的文件传输工具,可以说是一款很强大的 http 命令行工具。它支持文件的上传和下载,是综合传输工具,但按传统,习惯称 url 为下载工具。